路由管理的方法和節(jié)點的制作方法
【專利摘要】本發(fā)明涉及通信【技術(shù)領(lǐng)域】,提供了一種路由管理的方法和節(jié)點,其中,路由管理的方法包括:第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目;第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。通過本發(fā)明,任意節(jié)點均可對路由信息進行更新,減輕了管理節(jié)點的負擔,進而增加了系統(tǒng)性能。
【專利說明】路由管理的方法和節(jié)點
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信【技術(shù)領(lǐng)域】,尤其涉及路由管理的方法和節(jié)點。
【背景技術(shù)】
[0002]HBase是一個分布式的、面向列的開源數(shù)據(jù)庫,HBase系統(tǒng)中可以包括:管理節(jié)點、區(qū)域節(jié)點、終端。其中,管理節(jié)點可以用于監(jiān)控區(qū)域節(jié)點的狀態(tài)、區(qū)域的負載均衡、劃分路由區(qū)間、將終端定向到相應(yīng)的區(qū)域節(jié)點等;區(qū)域節(jié)點可以用于處理終端的請求(讀、寫、瀏覽
O
[0003]路由表指的是路由器或者其他網(wǎng)絡(luò)設(shè)備上存儲的表,該表中可以存有到達特定終端的路徑,在某些情況下,還有一些與這些路徑相關(guān)的度量。
[0004]在HBase系統(tǒng)中,各區(qū)域節(jié)點中的路由表由管理節(jié)點進行維護和更新,使得各區(qū)域節(jié)點根據(jù)路由表處理相應(yīng)終端的請求,并進行數(shù)據(jù)傳輸。
[0005]在實現(xiàn)上述路由管理的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:由于,各節(jié)點中的路由表由管理節(jié)點進行維護和更新,因此,增加了管理節(jié)點的負擔,導(dǎo)致管理節(jié)點不能及時進行其他操作,降低了系統(tǒng)的性能。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的實施例提供一種路由管理的方法和節(jié)點,解決了管理節(jié)點不能及時進行其他操作,降低了系統(tǒng)的性能的問題。
[0007]為達到上述目的,本發(fā)明的實施例采用如下技術(shù)方案:
[0008]一種路由管理的方法,包括:
[0009]第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;
[0010]第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目;
[0011]第一節(jié)點將所述不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)所述不一致的路由條目的信息更新各自的路由條目。
[0012]一種節(jié)點,包括:
[0013]發(fā)送器,用于向第二節(jié)點發(fā)送更新請求;還用于將本地路由條目版本信息與接收器接收的第二節(jié)點的路由條目版本信息不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)所述不一致的路由條目的信息更新各自的路由條目;
[0014]所述接收器,用于接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;
[0015]處理器,用于確定所述不一致的路由條目。
[0016]本發(fā)明實施例提供的路由管理的方法和節(jié)點,采用上述方法后,第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目;第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。使得不僅僅只依賴管理節(jié)點對其他節(jié)點進行路由表更新,任意節(jié)點均可對路由表進行更新,減輕了管理節(jié)點的負擔,進而增加了系統(tǒng)性能。
【專利附圖】
【附圖說明】
[0017]為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0018]圖1為本實施例應(yīng)用的系統(tǒng)架構(gòu)示意圖;
[0019]圖2為本實施例提供的管理節(jié)點ManagerNode心跳處理流程圖;
[0020]圖3為本實施例提供的集群節(jié)點ClusterNode處理終端請求流程圖;
[0021]圖4為本實施例提供的一個路由區(qū)間Range中路由處理的邏輯圖;
[0022]圖5為本實施例提供的一種路由管理的方法流程圖;
[0023]圖6為本實施例提供的另一種路由管理的方法流程圖;
[0024]圖7為本實施例提供的路由條目、和路由條目版本信息結(jié)構(gòu)示意圖;
[0025]圖8為本實施例提供的再一種路由管理的方法流程圖;
[0026]圖9為本實施例提供的一種節(jié)點結(jié)構(gòu)示意圖。
【具體實施方式】
[0027]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0028]為了更清楚的描述以下實施例,首先,對實施例的系統(tǒng)架構(gòu)及處理終端的處理請求的方法做簡單介紹。
[0029]如圖1所示,該系統(tǒng)中可以包含:ManagerNode (管理節(jié)點)、和至少一個ClusterNode (集群節(jié)點)。
[0030]其中,ManagerNode是系統(tǒng)的管理節(jié)點,用于維護各個集群節(jié)點和管理節(jié)點的心跳,記錄著各個區(qū)域節(jié)點的狀態(tài),根據(jù)這些記錄,ManagerNode判定各節(jié)點在線還是不可達,其中,不可達可以為不能正常的進行數(shù)據(jù)傳輸,但節(jié)點不一定不在線。
[0031]ClusterNode是為終端提供服務(wù)的集群節(jié)點,所有請求將會被路由到相應(yīng)的ClusterNode上進行處理。
[0032]圖1中,Rack_l (節(jié)點集群名稱)和Rack_2 (節(jié)點集群名稱)表示在兩個節(jié)點機柜上,所有的節(jié)點組成了節(jié)點集群。A/B/C、l/2/3表示在不同機柜上的集群節(jié)點,網(wǎng)絡(luò)Partition(分區(qū))可能造成 Rack_l 中所有 ClusterNode 與 ManagerNode 之間、和 Rack_l 中所有ClusterNode與Rack_2中的所有節(jié)點之間不可達,但是Rack_2中的所有ClusterNode與ManagerNode保持正常的連接。
[0033]ManagerNode的功能可以包括但不限于:每個ClusterNode探測到存在某節(jié)點不可達時,需要向ManageNode進行確認;每個ClusterNode可以周期性向ManagerNode發(fā)送心跳請求(包含與ManagerNode的連接狀態(tài)),以便ManagerNode根據(jù)心跳請求判斷并記錄ClusterNode在線還是不可達;
[0034]ManagerNode中可以存儲有LivingNode (在線節(jié)點)列表記錄了在線節(jié)點信息的列表、不可達節(jié)點信息列表。
[0035]如圖2所示,為ManagerNode心跳處理流程圖,具體步驟可以包括:
[0036]201、ClusterNode 向 ManagerNode 發(fā)送心跳請求。
[0037]202、ManagerNode 接收 ClusterNode 發(fā)送的心跳請求,并在 LivingNode 列表中記錄ClusterNode的時間戳;如果為第一次的心跳請求,則返回響應(yīng),響應(yīng)中可以包含ManagerNode記錄的LivingNode列表、系統(tǒng)中接入節(jié)點標識信息,以便該ClusterNode從接入節(jié)點中獲取路由表信息;如果心跳請求中包含其它節(jié)點與ManagerNode的連接狀態(tài)為false (失敗連接),則返回響應(yīng),用于根據(jù)響應(yīng)修改路由表;如果心跳請求不包含連接狀態(tài)為false,則不返回響應(yīng)。
[0038]203、ClusterNode 接收 ManagerNode 發(fā)送的上述響應(yīng)。
[0039]204、ClusterNode收到響應(yīng)后,設(shè)置與ManagerNode的連接狀態(tài)為True (成功連接或可達)。其中,ManagerNode收到ClusterNode的心跳請求或其他請求,都記錄該ClusterNode的狀態(tài)為在線,并記錄時間戳。
[0040]ManagerNode被動的判斷集群節(jié)點不可達,即ManagerNode接收ClusterNode發(fā)送的不可達報告請求后,根據(jù)該不可達報告請求中包含的被匯報不可達節(jié)點上次的心跳記錄(時間戳),判斷被匯報不可達節(jié)點是否掉線,并向發(fā)送不可達報告請求的ClusterNode返回信息。其中,不可達報告請求還可以包含但不限于不可達節(jié)點的標識信息等。
[0041]如圖3所示,為一個Range (路由區(qū)間)中路由處理的邏輯圖,其中,任意Range中可以包括至少一個ClusterNode,且每個ClusterNode在任意Range中可以為Master (主節(jié)點)或Slave (備份節(jié)點)。每個Range中包含的Master、和Slave中存儲的信息相同,Master可以處理寫和讀操作請求,Slave可以處理讀操作請求。
[0042]其中,若處理請求不為接入節(jié)點處理,則首先將路由請求路由到路由請求中包含的標識Key所在Range的Master中,如果Master不可達,且如果處理請求為寫請求,則返回處理失敗響應(yīng);如果處理請求為讀請求,則根據(jù)路由表可以將處理請求繼續(xù)路由到該Range 的 Slave 中。
[0043]路由表中可以記錄了所有節(jié)點的路由信息,例如,可以記錄了系統(tǒng)各Range中包含的Master信息和Slave信息。
[0044]各ClusterNode用于處理相應(yīng)終端的請求,下面以其中一個ClusterNode為例,如圖4所示,ClusterNode處理終端請求的步驟可以包括:
[0045]401、接入節(jié)點接收終端發(fā)送的處理請求,該處理請求包含處理該請求的Key ;
[0046]402、判斷處理請求的中包含的Key所在Range是否為接入節(jié)點所在的Range,如果否,執(zhí)行步驟403 ;如果是,轉(zhuǎn)步驟404 ;
[0047]403、獲得 Key 所在 Range 的 Master 信息;
[0048]4031、判斷403中獲取的Master是否在線;如果是,轉(zhuǎn)步驟4032 ;如果否,轉(zhuǎn)步驟406 ;[0049]4032、將該處理請求發(fā)送至Master中處理;
[0050]404、判斷接入節(jié)點與ManagerNode的連接是否正常;如果正常,轉(zhuǎn)向4041 ;如果不正常,則執(zhí)行步驟405 ;
[0051]4041、本地處理該處理請求;
[0052]405、判斷是讀請求還是其他請求;如果是讀請求,轉(zhuǎn)向4041 ;否則轉(zhuǎn)向406 ;
[0053]406、返回處理失敗的響應(yīng),處理結(jié)束。
[0054]下面提供一些實施例對本方案進行具體說明。
[0055]實施例一
[0056]本實施例提供一種路由管理的方法,如圖5所示,可以包括以下步驟:
[0057]501、第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息。
[0058]502、第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目。
[0059]503、第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。
[0060]采用上述方法后,第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目;第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。使得不僅僅只依賴管理節(jié)點對其他節(jié)點進行路由表更新,任意節(jié)點均可對路由表進行更新,減輕了管理節(jié)點的負擔,進而增加了系統(tǒng)性能。
[0061]實施例二
[0062]作為改進,本實施例提供另一種路由管理的方法,該方法是對圖5所示的方法的進一步擴展,其中,不一致的路由條目的信息包括第一路由條目以及第一路由條目對應(yīng)的第一路由條目版本信息,如圖6所示,可以包括以下步驟:
[0063]601、判斷第一節(jié)點與管理節(jié)點之間是否不可達。若可達,則執(zhí)行步驟602 ;若不可達,則流程結(jié)束。
[0064]若可達,則第一節(jié)點與管理節(jié)點連接正常,若不可達,則第一節(jié)點與管理節(jié)點連接不正常。
[0065]第一節(jié)點和第二節(jié)點可以為同一路由區(qū)間中的或不同路由區(qū)間中的Slave或Master,以下均以第一節(jié)點和第二節(jié)點為同一路由區(qū)間中的Slave或Master為例進行說明。
[0066]路由條目可以包含但不限于:該路由條目對應(yīng)的Range、該Range節(jié)點列表,節(jié)點列表可以包含但不限于Master信息、和Slave信息。
[0067]作為本實施例的一種實施方式,節(jié)點的路由表中可以包含但不限于:路由條目列表、和路由條目版本信息列表,且路由條目列表可以包含至少一個路由條目,路由條目版本信息列表可以包含對應(yīng)的至少一個路由條目版本信息。
[0068]本實施例對判斷節(jié)點是否不可達的方法不作限定,可以根據(jù)實際需要進行設(shè)定,在此不再贅述。[0069]602、第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息。
[0070]更新請求可以用于但不限于指示第一節(jié)點和第二節(jié)點將各自的路由表更新為最新的路由表,最新的路由表可以包含但不限于第一節(jié)點和第二節(jié)點中最新的路由條目及最新的路由條目版本信息等。
[0071]作為本實施例的一種實施方式,第一節(jié)點向第二節(jié)點發(fā)送更新請求的觸發(fā)條件可以為但不限于:第一節(jié)點在更新完本地的路由表后主動觸發(fā)的;或者,第一節(jié)點周期性向第二節(jié)點發(fā)送更新請求。
[0072]節(jié)點包含的路由表可能會根據(jù)實際情況進行相應(yīng)變化,則此時,路由表中相應(yīng)的路由條目及路由條目版本信息均需要進行同步更新,更新后路由條目版本信息的版本號可能發(fā)生變化。
[0073]進一步的,如圖7所示,為路由條目包含的信息列表、和路由條目版本信息包含的信息列表。
[0074]其中,路由條目記錄了當前系統(tǒng)的不同路由條目的信息,主要用于進行請求路由的查詢、判斷、轉(zhuǎn)發(fā),每個路由條目可以包含Range信息71、ReplicaNodeList (節(jié)點列表)72記錄了該Range數(shù)據(jù)在集群節(jié)點的分布狀況,即該路由條目中包含的Master信息73、和Slave信息74 (可以包括但不限于:Slave_l (741)、Slave_2 (742)等),每一個ReplicaNodeList72中,不能存在兩個相同的節(jié)點,但是,同一個節(jié)點可以位于不同的路由條目中。
[0075]Range可以表示路由區(qū)間,如可以表示為但不限于(0x0000,OxFFFF]等。
[0076]各個路由條目之間不存在重合的Range,即各Range之間不存在交集,所有Range的并集是一個全集,通常的,可以將Range作為區(qū)別路由條目和路由條目版本信息的標識信息;每個ClusterNode接收到請求,根據(jù)請求中的Key,從路由條目列表中判斷該Key對應(yīng)的Range,并獲得該Range對應(yīng)的ReplicaNodeList中的處理該請求的節(jié)點,通常情況下由Range對應(yīng)的Master進行處理。
[0077]路由條目版本信息記錄了路由條目的變化和狀態(tài),還記載了歷史上出現(xiàn)過的路由條目狀態(tài)。路由條目版本信息用于維護系統(tǒng)各個節(jié)點路由條目的一致性。
[0078]路由條目版本信息可以包括:Range信息75、Range_State (狀態(tài)信息)76用于描述相應(yīng)路由條目的狀態(tài),可以包括但不限于三個狀態(tài):Add (添加)、Delete (刪除)、Modify(修改)。
[0079]其中,路由條目版本信息中的Range值75,與相應(yīng)的路由條目中的Range值71相同。例如,路由條目I版本信息中的Range值,與路由條目I中的Range值相同。
[0080]本實施例對路由條目版本狀態(tài)不作限定,可以根據(jù)實際需要進行設(shè)定,在此不再贅述。
[0081]Range_Version (版本號)77記錄了路由條目變化后,每個路由條目的版本號。通常情況下,初始值設(shè)定為0,每對相應(yīng)的路由條目進行修改,版本號進行單調(diào)的變化。
[0082]例如,可以將版本號加/減預(yù)設(shè)數(shù)值,另外,相同路由條目中,版本號最大/最小的路由條目可能為最新的路由條目。
[0083]本實施例對預(yù)設(shè)數(shù)值不作限定,可以根據(jù)實際需要進行設(shè)定,例如,可以為:1、或2等,在此不再贅述。
[0084]進一步的,可以但不限于根據(jù)版本號判斷第一節(jié)點與第二節(jié)點之間相對應(yīng)的路由條目和路由條目版本信息是否一致。
[0085]下面對路由表變化進行舉例說明:
[0086]若所屬某一路由條目中的Slave向Master發(fā)送信息后超出預(yù)設(shè)時間后還未獲取相應(yīng)反饋信息,則Slave判斷該路由條目中的Master是否不可達;具體的判斷方法可以為但不限于:Slave向Manager發(fā)送不可達報告請求,并根據(jù)Manager反饋的信息進行判斷。若Slave與Manager之間可達,且Master與Manager之間不可達,則此時,可以將Slave修改為該路由條目中的Master,因此,Slave存儲的路由表中相應(yīng)的路由條目也需要進行相應(yīng)的修改。并且,修改后的路由條目對應(yīng)的路由條目版本信息的版本號被加I。這種情況下,可能導(dǎo)致各路由表中相應(yīng)的路由條目對應(yīng)的版本號不同。修改后的路由條目版本信息包括的路由條目的狀態(tài)可以為Modify。
[0087]作為本實施例的一種實施方式,第二節(jié)點在接收到第一節(jié)點發(fā)送的更新請求后,判斷第一節(jié)點的路由條目版本信息與第二節(jié)點的路由條目版本信息是否相同,若不相同,則第二節(jié)點向第一節(jié)點發(fā)送第二節(jié)點的路由條目版本信息;若相同,則流程結(jié)束。
[0088]作為本實施例的一種實施方式,第二節(jié)點判斷第一節(jié)點的路由條目版本信息與第二節(jié)點的路由條目版本信息是否相同的方法可以為但不限于:第二節(jié)點計算用于描述第二節(jié)點的路由條目版本信息內(nèi)容的第二內(nèi)容標識;然后,比較第一內(nèi)容標識與第二內(nèi)容標識是否相同,其中,第一內(nèi)容標識是第一節(jié)點計算的并向第二節(jié)點發(fā)送的用于描述第一節(jié)點的路由條目版本信息內(nèi)容的標識。
[0089]若第一內(nèi)容標識與第二內(nèi)容標識不相同,說明第一節(jié)點的路由條目版本信息與第二節(jié)點的路由條目版本信息不同。
[0090]作為本實施例的一種實施方式,第一內(nèi)容標識與第二內(nèi)容標識可以為但不限于Hash_Value (某一數(shù)值的名稱),則此時,計算第一內(nèi)容標識與第二內(nèi)容標識的方法可以為:對第一節(jié)點的路由條目版本信息與第二節(jié)點的路由條目版本信息分別作Ha sh處理,得到第一內(nèi)容標識與第二內(nèi)容標識。
[0091]603、第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目。
[0092]本實施例對確定不一致的路由條目的方法不作限定,可以根據(jù)實際需要進行設(shè)定,在此不再贅述。
[0093]例如,可以根據(jù)版本號確定不一致的路由條目,即獲取版本號不一致的路由條目版本信息,再獲取不一致的路由條目版本信息對應(yīng)的路由條目。
[0094]進一步的,當對路由表中的某一路由條目和相應(yīng)的路由條目版本信息進行修改后,若將該路由條目版本信息的版本號加預(yù)設(shè)值,則版本號最大的路由條目版本信息即為最新的路由條目版本信息;若將版本號減預(yù)設(shè)值,則版本號最小的路由條目版本信息即為最新的路由條目版本信息。不一致的路由條目也可以包括但不限于第一節(jié)點與第二節(jié)點中最新的路由條目版本彳目息對應(yīng)的路由條目。
[0095]例如,以版本號最大的路由條目版本信息為最新的路由條目版本信息為例進行說明(以下實施例均以此為例進行說明),第二節(jié)點的路由表包含:路由條目I版本信息、路由條目2版本信息、路由條目3版本信息的版本號分別可以為:1、2、5,第一節(jié)點的路由表包含:路由條目I版本信息、路由條目2版本信息、路由條目3版本信息的版本號分別可以為:
2、3、3,則最新的路由表可以包含:版本號為2的路由條目I版本信息及其對應(yīng)的路由條目、版本號為3的路由條目2版本信息及其對應(yīng)的路由條目、版本號為5的路由條目3版本信息及其對應(yīng)的路由條目。
[0096]604、第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。
[0097]進一步的,不一致的路由條目的信息可以包括第一路由條目以及第一路由條目對應(yīng)的第一路由條目版本信息,第一路由條目包括第一節(jié)點中路由條目版本較新的路由條目,第一路由條目版本信息包括第一路由條目對應(yīng)的路由條目版本信息。
[0098]此時,如步驟603所列舉的例子,第一路由條目可以包含:版本號為2的路由條目I版本信息對應(yīng)的路由條目、版本號為3的路由條目2版本信息對應(yīng)的路由條目。第一路由條目版本信息可以包含:版本號為2的路由條目I版本信息、版本號為3的路由條目2版本信息。
[0099]605、第二節(jié)點根據(jù)第一路由條目和第一路由條目版本信息更新第二節(jié)點的路由條目和對應(yīng)的路由條目版本信息。
[0100]作為本實施例的一種實施方式,第二節(jié)點可以將第二節(jié)點的且標識信息與第一路由條目的標識信息相同的路由條目更新為第一路由條目,同時,將第二節(jié)點的且標識信息與第一路由條目版本信息的標識信息相同的路由條目版本信息更新為第一路由條目版本信息。
[0101]具體的,第二節(jié)點可以將路由條目I更新為版本號為2的路由條目I版本信息對應(yīng)的路由條目;并可以將路由條目2更新為版本號為3的路由條目2版本信息對應(yīng)的路由條目。
[0102]本實施例對路由條目標識信息和路由條目版本信息的標識信息不作限定,可以根據(jù)實際需要進行設(shè)定,例如,可以為Range,在此不再贅述。
[0103]采用上述方法后,第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目;第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。使得不僅僅只依賴管理節(jié)點對其他節(jié)點進行路由表更新,任意節(jié)點均可對路由表進行更新,減輕了管理節(jié)點的負擔,進而增加了系統(tǒng)性能。
[0104]實施例三
[0105]本實施例提供另一種路由管理的方法,該方法是對圖5所示的方法的進一步擴展,其中,不一致的路由條目的信息包括第二節(jié)點中路由條目版本較新的路由條目版本信
肩、O
[0106]值得說明的是,實施例三與實施例二的區(qū)別在于:不一致的路由條目的信息中包括的內(nèi)容不相同,使得第一節(jié)點與第二節(jié)點執(zhí)行的相應(yīng)操作不同,實施例三與實施例二不僅可以分開執(zhí)行,也可以合并在一起執(zhí)行,即不一致的路由條目的信息可以包括:第二節(jié)點中路由條目版本較新的路由條目版本信息、第一路由條目以及第一路由條目對應(yīng)的第一路由條目版本信息中至少一項。
[0107]如圖8所示,可以包括以下步驟:
[0108]801、判斷第一節(jié)點與管理節(jié)點之間是否不可達。若可達,則執(zhí)行步驟702 ;若不可達,則流程結(jié)束。
[0109]802、第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息。
[0110]803、第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目。
[0111]804、第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。
[0112]進一步的,不一致的路由條目的信息包括第二節(jié)點中路由條目版本較新的路由條目版本信息,同時,指示第二節(jié)點向第一節(jié)點發(fā)送第二路由條目,第二路由條目可以為第二節(jié)點中路由條目版本較新的路由條目版本信息對應(yīng)的路由條目。
[0113]805、第一節(jié)點接收第二節(jié)點發(fā)送的第二路由條目。
[0114]806、第一節(jié)點根據(jù)第二路由條目更新本地路由條目和對應(yīng)的路由條目版本信息。
[0115]作為本實施例的一種實施方式,第一節(jié)點可以將第一節(jié)點的且標識信息與第二路由條目的標識信息相同的路由條目更新為第二路由條目;然后,從第二節(jié)點的路由條目版本信息中獲取第二路由條目對應(yīng)的第二路由條目版本信息;將第一節(jié)點的且標識信息與第二路由條目版本信息的標識信息相同的路由條目版本信息更新為第二路由條目版本信息。
[0116]本實施例中的各步驟的【具體實施方式】與實施例二中的實施方式類似,在此不再贅述。
[0117]采用上述方法后,第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目;第一節(jié)點將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。使得不僅僅只依賴管理節(jié)點對其他節(jié)點進行路由表更新,任意節(jié)點均可對路由表進行更新,減輕了管理節(jié)點的負擔,進而增加了系統(tǒng)性能。
[0118]實施例四
[0119]本實施例提供一種節(jié)點,如圖9所示,可以包括:
[0120]發(fā)送器91,用于向第二節(jié)點發(fā)送更新請求;將本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目;
[0121]接收器92,用于接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;
[0122]處理器93,用于確定不一致的路由條目。
[0123]進一步的,發(fā)送器91發(fā)送的不一致的路由條目的信息包括第一路由條目,第一路由條目包括第一節(jié)點中路由條目版本較新的路由條目。
[0124]進一步的,發(fā)送器91發(fā)送的不一致的路由條目的信息包括第二節(jié)點中路由條目版本較新的路由條目版本信息;
[0125]接收器92,還用于接收第二節(jié)點發(fā)送的第二路由條目,第二路由條目為第二節(jié)點中路由條目版本較新的路由條目版本信息對應(yīng)的路由條目;
[0126]處理器93,還用于根據(jù)第二路由條目更新本地路由條目和對應(yīng)的路由條目版本信
肩、O
[0127]進一步的,處理器93,該用于判斷第一節(jié)點與管理節(jié)點之間是否可達;
[0128]發(fā)送器91,還用于若處理器判斷出第一節(jié)點與管理節(jié)點之間可達,則向第二節(jié)點發(fā)送更新請求;
[0129]接收器92,還用于接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息。
[0130]進一步的,路由條目版本信息包含與對應(yīng)的路由條目相同的路由區(qū)間信息、狀態(tài)信息、版本號。
[0131]采用上述方法后,發(fā)送器向第二節(jié)點發(fā)送更新請求,并且接收器接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息;處理器確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目;發(fā)送器將不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)不一致的路由條目的信息更新各自的路由條目。使得不僅僅只依賴管理節(jié)點對其他節(jié)點進行路由表更新,任意節(jié)點均可對路由表進行更新,減輕了管理節(jié)點的負擔,進而增加了系統(tǒng)性能。
[0132]通過以上的實施方式的描述,所屬領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件的方式來實現(xiàn),當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計算機軟件產(chǎn)品存儲在可讀取的存儲介質(zhì)中,如計算機的軟盤,硬盤或光盤等,包括若干指令用以使得一臺計算機設(shè)備(可以是個人計算機,服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實施例所述的方法。
[0133]以上所述,僅為本發(fā)明的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)所述以權(quán)利要求的保護范圍為準。
【權(quán)利要求】
1.一種路由管理的方法,其特征在于,包括: 第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息; 第一節(jié)點確定本地路由條目版本信息與第二節(jié)點的路由條目版本信息不一致的路由條目; 第一節(jié)點將所述不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)所述不一致的路由條目的信息更新各自的路由條目。
2.根據(jù)權(quán)利要求1所述的路由管理的方法,其特征在于,所述不一致的路由條目的信息包括第一路由條目以及第一路由條目對應(yīng)的第一路由條目版本信息,所述第一路由條目包括第一節(jié)點中路由條目版本較新的路由條目,所述第一路由條目版本信息包括所述第一路由條目對應(yīng)的路由條目版本信息; 所述第一節(jié)點和第二節(jié)點根據(jù)所述不一致的路由條目的信息更新各自的路由條目包括: 所述第二節(jié)點根據(jù)所述第一路由條目和所述第一路由條目版本信息更新第二節(jié)點的路由條目和對應(yīng)的路由條目版本信息。
3.根據(jù)權(quán)利要求1或2所述的路由管理的方法,其特征在于,所述不一致的路由條目的信息包括第二節(jié)點中路由條目版本較新的路由條目版本信息; 所述方法還包括: 第一節(jié)點接收第二節(jié)點發(fā)送的第二路由條目,所述第二路由條目為第二節(jié)點中路由條目版本較新的路由條目版本信息對應(yīng)的路由條目; 第一節(jié)點根據(jù)所述第二路由條目更新本地路由條目和對應(yīng)的路由條目版本信息。
4.根據(jù)權(quán)利要求1至3中任意一項所述的路由管理的方法,其特征在于,在所述第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息之前,所述方法還包括: 判斷所述第一節(jié)點與管理節(jié)點之間是否可達; 所述第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息為: 若所述第一節(jié)點與管理節(jié)點之間可達,則所述第一節(jié)點向第二節(jié)點發(fā)送更新請求,并接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息。
5.根據(jù)權(quán)利要求1至4中任意一項所述的路由管理的方法,其特征在于,所述路由條目版本信息包含與對應(yīng)的路由條目相同的路由區(qū)間信息、狀態(tài)信息、版本號。
6.一種節(jié)點,其特征在于,包括: 發(fā)送器,用于向第二節(jié)點發(fā)送更新請求;還用于將本地路由條目版本信息與接收器接收的第二節(jié)點的路由條目版本信息不一致的路由條目的信息發(fā)送給第二節(jié)點,以便于第一節(jié)點和第二節(jié)點根據(jù)所述不一致的路由條目的信息更新各自的路由條目; 所述接收器,用于接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息; 處理器,用于確定所述不一致的路由條目。
7.根據(jù)權(quán)利要求6所述的節(jié)點,其特征在于,所述發(fā)送器發(fā)送的所述不一致的路由條目的信息包括第一路由條目以及第一路由條目對應(yīng)的第一路由條目版本信息,所述第一路由條目包括第一節(jié)點中路由條目版本較新的路由條目,所述第一路由條目版本信息包括所述第一路由條目對應(yīng)的路由條目版本信息。
8.根據(jù)權(quán)利要求6或7所述的節(jié)點,其特征在于,所述發(fā)送器發(fā)送的所述不一致的路由條目的信息包括第二節(jié)點中路由條目版本較新的路由條目版本信息; 所述接收器,還用于接收第二節(jié)點發(fā)送的第二路由條目,所述第二路由條目為第二節(jié)點中路由條目版本較新的路由條目版本信息對應(yīng)的路由條目; 所述處理器,還用于根據(jù)所述第二路由條目更新本地路由條目和對應(yīng)的路由條目版本信息。
9.根據(jù)權(quán)利要求6至8任意一項所述的節(jié)點,其特征在于,所述處理器,還用于判斷所述第一節(jié)點與管理節(jié)點之間是否可達; 所述發(fā)送器,還用于若所述處理器判斷出所述第一節(jié)點與管理節(jié)點之間可達,則向第二節(jié)點發(fā)送更新請求; 所述接收器,還用于接收第二節(jié)點發(fā)送的第二節(jié)點的路由條目版本信息。
10.根據(jù)權(quán)利要求6至9中任意一項所述的節(jié)點,其特征在于,所述路由條目版本信息包含與對應(yīng)的路由條目相同的路由`區(qū)間信息、狀態(tài)信息、版本號。
【文檔編號】H04L12/751GK103685034SQ201210341766
【公開日】2014年3月26日 申請日期:2012年9月14日 優(yōu)先權(quán)日:2012年9月14日
【發(fā)明者】王鐵英 申請人:華為技術(shù)有限公司