專(zhuān)利名稱(chēng):基于分布式哈希表的數(shù)據(jù)處理方法和網(wǎng)絡(luò)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別涉及一種基于分布式哈希表的數(shù)據(jù)處 理方法和網(wǎng)絡(luò)。
背景技術(shù):
哈希表是一種帶有索引值的散列表,通常用來(lái)對(duì)數(shù)字進(jìn)行排序。而DHT (分布式哈希表,Distributed Hash Table)是一種分布式存儲(chǔ)方式,這種方式 將整個(gè)哈希表分開(kāi)存儲(chǔ)在不同的實(shí)體中,這些分布的哈希表形成一個(gè)哈希表網(wǎng) 絡(luò),在不需要服務(wù)器的情況下,每個(gè)客戶(hù)端負(fù)責(zé)一個(gè)小范圍的路由,并負(fù)責(zé)存 儲(chǔ)一小部分?jǐn)?shù)據(jù),從而實(shí)現(xiàn)整個(gè)DHT網(wǎng)絡(luò)的存儲(chǔ)和查找,整個(gè)DHT網(wǎng)絡(luò)具有 可伸縮性和可配置性。
現(xiàn)有的DHT網(wǎng)絡(luò)均為單向環(huán)形網(wǎng)絡(luò),這種網(wǎng)絡(luò)可以實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和查 找等處理。現(xiàn)有DHT網(wǎng)絡(luò)在網(wǎng)絡(luò)中的多個(gè)節(jié)點(diǎn)上分布存儲(chǔ)凝:據(jù),每個(gè)節(jié)點(diǎn)都 有一個(gè)節(jié)點(diǎn)標(biāo)識(shí)號(hào),并且該節(jié)點(diǎn)知道其下一個(gè)節(jié)點(diǎn)的標(biāo)識(shí)號(hào),各個(gè)節(jié)點(diǎn)上存儲(chǔ) 的每一個(gè)數(shù)據(jù)都有各自獨(dú)立識(shí)別的索引值,其中任意數(shù)據(jù)的索引值大于等于它 所存儲(chǔ)的節(jié)點(diǎn)標(biāo)識(shí)號(hào),并且該索引值小于下一個(gè)節(jié)點(diǎn)的標(biāo)識(shí)號(hào),所有節(jié)點(diǎn)首尾 相連,形成一個(gè)單向發(fā)展的環(huán),在該環(huán)形網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向查找 和存儲(chǔ)數(shù)據(jù)。如圖1所示為現(xiàn)有基于分布式哈希表的單向環(huán)形網(wǎng)絡(luò)示意圖,該 環(huán)形網(wǎng)絡(luò)的數(shù)據(jù)處理范圍為0-100,所有要存儲(chǔ)的數(shù)據(jù)都在該范圍內(nèi)進(jìn)行取值, 該環(huán)形網(wǎng)絡(luò)包括7個(gè)節(jié)點(diǎn),分別為5、 9、 23、 37、 48、 63和92。其中,設(shè)本 節(jié)點(diǎn)標(biāo)識(shí)號(hào)為Nodeld,下一節(jié)點(diǎn)的標(biāo)識(shí)號(hào)為NextNodeld,存儲(chǔ)數(shù)據(jù)的索引值 Key,三個(gè)值之間滿(mǎn)足NodekKKey〈NextNodeld.應(yīng)用該網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)存儲(chǔ)的 方法流程如圖2所示
步驟201:設(shè)置待存儲(chǔ)數(shù)據(jù)的索引值并將該數(shù)據(jù)發(fā)送到環(huán)形網(wǎng)絡(luò)的某一節(jié)
點(diǎn)上。
步驟202:判斷要存儲(chǔ)數(shù)據(jù)的索引值與該節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值是否大于存儲(chǔ) 數(shù)據(jù)索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值,若是,則執(zhí)行步驟203;否則,執(zhí)行步 驟204。
步驟203:該節(jié)點(diǎn)將數(shù)據(jù)傳遞到下一個(gè)節(jié)點(diǎn),然后返回202。
步驟204:將數(shù)據(jù)存儲(chǔ)在當(dāng)前的節(jié)點(diǎn)中,結(jié)束流程。
具體的,以圖1所示的單向環(huán)形網(wǎng)絡(luò)為例,將索引值為40的數(shù)據(jù)發(fā)送到 環(huán)形網(wǎng)絡(luò)的節(jié)點(diǎn)23上,根據(jù)單向環(huán)形網(wǎng)絡(luò)沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向存儲(chǔ)數(shù)據(jù) 的特性,節(jié)點(diǎn)23的下一個(gè)節(jié)點(diǎn)為節(jié)點(diǎn)37,判斷40-23 = 17>40-37 = 3,因此 將數(shù)據(jù)傳遞到當(dāng)前節(jié)點(diǎn)的下一節(jié)點(diǎn)37進(jìn)行處理,節(jié)點(diǎn)37的下一節(jié)點(diǎn)為48, 判斷40 - 37 = 3<40 — 48 = — 8(在0-100的范圍內(nèi)對(duì)—8取補(bǔ)4直為100 — 8 = 92 ), 因此將數(shù)據(jù)最終存儲(chǔ)在節(jié)點(diǎn)37上。同樣查找一個(gè)數(shù)據(jù)的流程與存儲(chǔ)類(lèi)似,即 若待查找數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于待查找數(shù)據(jù)的索引值與 下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值,則將待查找數(shù)據(jù)沿網(wǎng)絡(luò)中節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞 到下一節(jié)點(diǎn)進(jìn)行查找,否則,就在當(dāng)前節(jié)點(diǎn)查找數(shù)據(jù)。
在現(xiàn)有的基于分布式哈希表的單向環(huán)形網(wǎng)絡(luò)中,只能沿著節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大 的方向?qū)?shù)據(jù)進(jìn)行處理。當(dāng)數(shù)據(jù)在節(jié)點(diǎn)間進(jìn)行傳遞的過(guò)程中,若某兩個(gè)節(jié)點(diǎn)間 的通路發(fā)生中斷故障,且該數(shù)據(jù)在傳遞到斷路處節(jié)點(diǎn)時(shí)仍未到達(dá)目的節(jié)點(diǎn),則 無(wú)法再將數(shù)據(jù)向前傳遞到能夠處理該數(shù)據(jù)的目的節(jié)點(diǎn)處;若某個(gè)節(jié)點(diǎn)發(fā)生故 障,而數(shù)據(jù)在傳遞到該節(jié)點(diǎn)時(shí)仍未到達(dá)目的節(jié)點(diǎn),則無(wú)法通過(guò)該節(jié)點(diǎn)將數(shù)據(jù)繼 續(xù)向前傳遞,且該故障節(jié)點(diǎn)本身也無(wú)法完成對(duì)數(shù)據(jù)的查找和存儲(chǔ)等操作。由此
可知,現(xiàn)有的單向環(huán)形網(wǎng)絡(luò)雖然在功能上已經(jīng)能夠完成數(shù)據(jù)的存儲(chǔ)和查找等操 作,但整個(gè)網(wǎng)絡(luò)的可靠性還不穩(wěn)定。以一個(gè)包含100個(gè)節(jié)點(diǎn)的單向環(huán)形網(wǎng)絡(luò)為 例,假設(shè)該網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)的可靠性為98%,則由這IOO個(gè)節(jié)點(diǎn)首尾相接組成 的單向環(huán)形網(wǎng)絡(luò)的可靠性為98%的IOO次方,即約為13%。而在實(shí)際應(yīng)用的大 規(guī)模網(wǎng)絡(luò)系統(tǒng)中,節(jié)點(diǎn)的個(gè)數(shù)遠(yuǎn)遠(yuǎn)大于IOO個(gè),相應(yīng)的整個(gè)網(wǎng)絡(luò)的可靠性將大
大降低。因此,現(xiàn)有的單向環(huán)形網(wǎng)絡(luò)在數(shù)據(jù)處理過(guò)程中可靠性低,網(wǎng)絡(luò)的可管 理性差,當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)或節(jié)點(diǎn)間的通路發(fā)生故障時(shí),會(huì)導(dǎo)致整個(gè)網(wǎng)絡(luò)的癱瘓, 極大的降低了網(wǎng)絡(luò)的實(shí)用性。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種基于分布式哈希表的數(shù)據(jù)處理方法,以克服現(xiàn)有 技術(shù)中單向環(huán)形網(wǎng)絡(luò)在數(shù)據(jù)處理過(guò)程中可靠性低,當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)或節(jié)點(diǎn)間的 通路發(fā)生故障時(shí),易導(dǎo)致網(wǎng)絡(luò)癱瘓而降低了網(wǎng)絡(luò)實(shí)用性的問(wèn)題。
本發(fā)明的另一目的是提供一種基于分布式哈希表的數(shù)據(jù)處理網(wǎng)絡(luò),以解決 現(xiàn)有技術(shù)中單向環(huán)形網(wǎng)絡(luò)數(shù)據(jù)處理的可靠性低,易導(dǎo)致網(wǎng)絡(luò)癱瘓而降低網(wǎng)絡(luò)實(shí) 用性的問(wèn)題。
為解決上述技術(shù)問(wèn)題,本發(fā)明提供如下技術(shù)方案 一種基于分布式哈希表的數(shù)據(jù)處理方法,包括步驟
A、 設(shè)置待處理數(shù)據(jù)的方向標(biāo)志,并根據(jù)所述方向標(biāo)志在網(wǎng)絡(luò)中傳遞該數(shù)
據(jù);
B、 當(dāng)所述待處理數(shù)據(jù)傳遞到設(shè)置了斷路標(biāo)志的節(jié)點(diǎn)時(shí),該數(shù)據(jù)沿與所述 方向標(biāo)志相反的方向傳遞。
所述步驟A包括
設(shè)置待處理數(shù)據(jù)的前進(jìn)標(biāo)志,并根據(jù)所述前進(jìn)標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)
增大的方向傳遞該lt據(jù);或
設(shè)置待處理數(shù)據(jù)的后退標(biāo)志,并根據(jù)所述后退標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)
減小的方向傳遞該邀:據(jù)。
所述步驟B中設(shè)置斷路標(biāo)志節(jié)點(diǎn)包括
網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)持續(xù)向相鄰節(jié)點(diǎn)發(fā)送空數(shù)據(jù);
當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志。
所述當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志包
括
當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到前方節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的前
方斷路標(biāo)志;
當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到后方節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的后 方斷路標(biāo)志。
當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)沿前進(jìn)標(biāo)志傳遞時(shí),所述步驟B包括 當(dāng)所述待處理數(shù)據(jù)傳遞到設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)時(shí),該節(jié)點(diǎn)更改待處 理數(shù)據(jù)的方向標(biāo)志為后退標(biāo)志,并沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向傳遞數(shù)據(jù)。 所述沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向傳遞數(shù)據(jù)包括
當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),將所述數(shù)據(jù)傳遞到下一節(jié)點(diǎn);
當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),將所述lt據(jù)傳遞到下一節(jié)點(diǎn)并在下一節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
所述步驟B還包括
將查詢(xún)到的設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為所述設(shè)置了后方斷路標(biāo)志的 節(jié)點(diǎn)的后方節(jié)點(diǎn),并取消所述設(shè)置的后方斷路標(biāo)志;和
將所述設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前 方節(jié)點(diǎn),并取消所述設(shè)置的前方斷路標(biāo)志。
當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)沿后退標(biāo)志傳遞時(shí),所述步驟B包括
當(dāng)所述待處理數(shù)據(jù)傳遞到設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)時(shí),該節(jié)點(diǎn)更改待處 理數(shù)據(jù)的方向標(biāo)志為前進(jìn)標(biāo)志,并沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞數(shù)據(jù)。
所述沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞數(shù)據(jù)包括
當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),將所述lt據(jù)傳遞到下一節(jié)點(diǎn);
當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),在當(dāng)前節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
所述步驟8還包括
將查詢(xún)到的設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為所述設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn),并取消所述設(shè)置的前方斷路標(biāo)志;和
將所述設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為沒(méi)置了后方斷路標(biāo)志的節(jié)點(diǎn)的前 方節(jié)點(diǎn),并取消所述設(shè)置的后方斷路標(biāo)志。
一種基于分布式哈希表的數(shù)據(jù)處理網(wǎng)絡(luò),包括
斷路標(biāo)志設(shè)置單元,用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到空數(shù)據(jù)時(shí),設(shè)置該節(jié)點(diǎn) 的斷贈(zèng)4示志;
方向標(biāo)志設(shè)置單元,用于設(shè)置網(wǎng)絡(luò)中待處理數(shù)據(jù)的方向標(biāo)志,或根據(jù)所述 斷路標(biāo)志更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的方向標(biāo)志;
數(shù)據(jù)傳遞單元,用于才艮據(jù)所述方向標(biāo)志在網(wǎng)絡(luò)中傳遞數(shù)據(jù)。 所述斷^4示志^沒(méi)置單元包括
空數(shù)據(jù)發(fā)送單元,用于向網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)持續(xù)發(fā)送空數(shù)據(jù);
前方斷路標(biāo)志設(shè)置單元,用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到前方發(fā)送的空數(shù)據(jù) 時(shí),設(shè)置該節(jié)點(diǎn)的前方斷5^標(biāo)志;
后方斷路標(biāo)志設(shè)置單元,用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到后方發(fā)送的空數(shù)據(jù) 時(shí),設(shè)置該節(jié)點(diǎn)的后方斷路標(biāo)志。
所述方向標(biāo)志設(shè)置單元包括
初始方向標(biāo)志設(shè)置單元,用于設(shè)置網(wǎng)絡(luò)中待處理數(shù)據(jù)的前進(jìn)標(biāo)志,或設(shè)置 網(wǎng)絡(luò)中待處理數(shù)據(jù)的后退標(biāo)志;
方向標(biāo)志更改單元,用于當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)傳遞到設(shè)置了后方斷路標(biāo)志 的節(jié)點(diǎn)時(shí),更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的前進(jìn)標(biāo)志為后退標(biāo)志;或當(dāng)網(wǎng)絡(luò)中待處理 數(shù)據(jù)傳遞到設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)時(shí),更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的后退標(biāo)志 為前進(jìn)才示志。
所述數(shù)據(jù)傳遞單元包括
前向數(shù)據(jù)傳遞單元,用于根據(jù)前進(jìn)標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向 傳遞待處理數(shù)據(jù);
后向數(shù)據(jù)傳遞單元,用于根據(jù)后退標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向 傳遞待處理數(shù)據(jù)。
所述前向數(shù)據(jù)傳遞單元包括
前向數(shù)據(jù)判斷單元,用于比較沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大方向傳遞的待處理數(shù)據(jù)的
索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值和該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值;
前向數(shù)據(jù)執(zhí)行單元,用于當(dāng)所述待處理數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的 差值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將所述數(shù)據(jù)傳遞到下一節(jié)點(diǎn); 當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí) 號(hào)的差值時(shí),在當(dāng)前節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
所述前向數(shù)據(jù)傳遞單元還包括前向節(jié)點(diǎn)重置單元,用于將查詢(xún)到的設(shè)置了 前方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)的后方節(jié)點(diǎn),并取消所述 設(shè)置的后方斷路標(biāo)志;和將所述設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷 路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn),并取消所述設(shè)置的前方斷路標(biāo)志, 所述后向數(shù)據(jù)傳遞單元包括
后向數(shù)據(jù)判斷單元,用于比較沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小方向傳遞的待處理數(shù)據(jù)的 索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值和該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值;
后向數(shù)據(jù)執(zhí)行單元,用于當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小 于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將所述數(shù)據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)所述 數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差 值時(shí),將所述數(shù)據(jù)傳遞到下一節(jié)點(diǎn)并在下一節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
所述后向數(shù)據(jù)傳遞單元還包括后向節(jié)點(diǎn)重置單元,用于將查詢(xún)到的設(shè)置了 后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn),并取消所述 設(shè)置的前方斷路標(biāo)志;和將所述設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了后方斷 路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn),并取消所述設(shè)置的后方斷路標(biāo)志。
由以上本發(fā)明提供的技術(shù)方案可見(jiàn),本發(fā)明通過(guò)為網(wǎng)絡(luò)中的數(shù)據(jù)和節(jié)點(diǎn)分 別設(shè)置方向標(biāo)志和斷路標(biāo)志,將現(xiàn)有基于分布式哈希表的單向環(huán)形網(wǎng)絡(luò)變?yōu)榭?以雙向傳遞數(shù)據(jù)的雙向環(huán)形網(wǎng)絡(luò),當(dāng)該雙向環(huán)形網(wǎng)絡(luò)中的某個(gè)節(jié)點(diǎn)或某兩個(gè)節(jié) 點(diǎn)間的通路發(fā)生故障時(shí),可以更改數(shù)據(jù)的方向標(biāo)志,使其沿與原方向標(biāo)志相反 的方向繼續(xù)傳遞。應(yīng)用本發(fā)明雙向處理數(shù)據(jù)的方法,極大的增強(qiáng)了環(huán)形網(wǎng)絡(luò)的 可靠性和可管理性,使得整個(gè)網(wǎng)絡(luò)具有了故障保護(hù)能力,從而降低了網(wǎng)絡(luò)故障 的影響范圍,不易造成網(wǎng)絡(luò)癱瘓,提高了網(wǎng)絡(luò)的使用性能。
圖1為現(xiàn)有基于分布式哈希表的單向環(huán)形網(wǎng)絡(luò)示意圖2為現(xiàn)有單向環(huán)形網(wǎng)絡(luò)的數(shù)據(jù)存儲(chǔ)方法流程圖3為本發(fā)明方法流程圖4為本發(fā)明雙向環(huán)形網(wǎng)絡(luò)示意圖5為本發(fā)明方法的優(yōu)選實(shí)施例流程圖6為本發(fā)明方法的另一實(shí)施例流程圖7為本發(fā)明網(wǎng)絡(luò)的優(yōu)選實(shí)施例框圖。
具體實(shí)施例方式
本發(fā)明的核心是提供一種基于分布式哈希表的數(shù)據(jù)處理方法,該方法通過(guò) 設(shè)置待處理數(shù)據(jù)的方向標(biāo)志,并根據(jù)方向標(biāo)志在網(wǎng)絡(luò)中傳遞該數(shù)據(jù);當(dāng)待處理 數(shù)據(jù)傳遞到設(shè)置了斷路標(biāo)志的節(jié)點(diǎn)時(shí),該數(shù)據(jù)沿與設(shè)置的方向標(biāo)志相反的方向傳遞。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和實(shí)施方 式對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。 本發(fā)明方法流程如圖3所示
步驟301:根據(jù)網(wǎng)絡(luò)中設(shè)置的待處理數(shù)據(jù)的方向標(biāo)志傳遞該數(shù)據(jù)。
當(dāng)設(shè)置了待處理數(shù)據(jù)的前進(jìn)標(biāo)志,根據(jù)前進(jìn)標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增 大的方向傳遞該凄t據(jù);
當(dāng)設(shè)置了待處理數(shù)據(jù)的后退標(biāo)志,根據(jù)后退標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減 小的方向傳遞該數(shù)據(jù)。
步驟302:判斷網(wǎng)絡(luò)中的節(jié)點(diǎn)是否設(shè)置了斷路標(biāo)志,若是,則執(zhí)行步驟303;
否則,執(zhí)行步驟304。
網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)持續(xù)向相鄰節(jié)點(diǎn)發(fā)送空數(shù)據(jù),且當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收 到空數(shù)據(jù)時(shí)該節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志。具體的,當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收前方 節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的前方斷路標(biāo)志;當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接 收到后方節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的后方斷路標(biāo)志。
步驟303:沿與設(shè)置的方向標(biāo)志相反的方向傳遞待處理數(shù)據(jù)。
當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)沿前進(jìn)標(biāo)志傳遞到設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)時(shí),該 節(jié)點(diǎn)更改;降處理^:據(jù)的方向標(biāo)志為后退標(biāo)志,并沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向傳遞 數(shù)據(jù)。具體的,當(dāng)該數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下 一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將該數(shù)據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)該數(shù)據(jù)的索引值與當(dāng)前 節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將該數(shù)據(jù)傳遞到 下一節(jié)點(diǎn)并在下一節(jié)點(diǎn)對(duì)該數(shù)據(jù)進(jìn)行操作。特別地,將查詢(xún)到的設(shè)置了前方斷 路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了后方斷路標(biāo)志節(jié)點(diǎn)的后方節(jié)點(diǎn)同時(shí)取消設(shè)置的后方 斷路標(biāo)志,并將設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志節(jié)點(diǎn)的前 方節(jié)點(diǎn)同時(shí)取消設(shè)置的前方斷路標(biāo)志。
當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)傳遞到設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)時(shí),該節(jié)點(diǎn)更改待 處理數(shù)據(jù)的方向標(biāo)志為前進(jìn)標(biāo)志,并沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞數(shù)據(jù)。具體 的,當(dāng)該凄t據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí) 號(hào)的差值時(shí),將該凄t據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)該凄t據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào) 的差值小于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),在當(dāng)前節(jié)點(diǎn)對(duì)該數(shù)據(jù)進(jìn)行操 作。特別地,將查詢(xún)到的設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志 節(jié)點(diǎn)的前方節(jié)點(diǎn)同時(shí)f^消設(shè)置的前方斷路標(biāo)志,并將設(shè)置了前方斷路標(biāo)志的節(jié) 點(diǎn)作為設(shè)置了后方斷路標(biāo)志節(jié)點(diǎn)的前方節(jié)點(diǎn)同時(shí)取消設(shè)置的后方斷路標(biāo)志。
步驟304:繼續(xù)沿設(shè)置的方向標(biāo)志傳遞待處理數(shù)據(jù)。
當(dāng)待處理數(shù)據(jù)設(shè)置了前進(jìn)標(biāo)志,則繼續(xù)沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞數(shù) 據(jù)。具體的,當(dāng)該數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一 節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將該數(shù)據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)該凄丈據(jù)的索引值與當(dāng)前節(jié)
點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),在當(dāng)前節(jié)點(diǎn)對(duì)該數(shù) 據(jù)進(jìn)行操作。
當(dāng)待處理數(shù)據(jù)設(shè)置了后退標(biāo)志,則繼續(xù)沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向傳遞數(shù) 據(jù)。具體的,當(dāng)該數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一
節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將該數(shù)據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)該數(shù)據(jù)的索引值與當(dāng)前節(jié) 點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將該數(shù)據(jù)傳遞到下 一節(jié)點(diǎn)并在下 一節(jié)點(diǎn)對(duì)該數(shù)據(jù)進(jìn)行操作。
圖4為本發(fā)明基于分布式哈希表的雙向環(huán)形網(wǎng)絡(luò)示意圖
如圖4所示的雙向環(huán)形網(wǎng)絡(luò),該網(wǎng)絡(luò)的數(shù)據(jù)存儲(chǔ)范圍為0-100,所有要存 儲(chǔ)的數(shù)據(jù)都在該范圍內(nèi)進(jìn)行取值,該環(huán)形網(wǎng)絡(luò)包括7個(gè)節(jié)點(diǎn),這7個(gè)節(jié)點(diǎn)的標(biāo) 識(shí)號(hào)分別為5、 9、 23、 37、 48、 63和82。
當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)的方向標(biāo)志為前進(jìn)標(biāo)志時(shí),該數(shù)據(jù)沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大 的方向傳遞,即沿圖中順時(shí)針箭頭所示的方向傳遞該凝:據(jù);當(dāng)網(wǎng)絡(luò)中待處理數(shù) 據(jù)的方向標(biāo)志為后退標(biāo)志時(shí),該數(shù)據(jù)沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向傳遞,即沿圖中 逆時(shí)針箭頭所示的方向傳遞該數(shù)據(jù)。
當(dāng)該網(wǎng)絡(luò)中兩個(gè)節(jié)點(diǎn)間通路發(fā)生故障時(shí),標(biāo)識(shí)號(hào)小的節(jié)點(diǎn)設(shè)置自身的后方 斷路標(biāo)志,標(biāo)識(shí)號(hào)大的節(jié)點(diǎn)設(shè)置自身的前方斷路標(biāo)志;當(dāng)該網(wǎng)絡(luò)中的某個(gè)節(jié)點(diǎn) 發(fā)生故障時(shí),與該節(jié)點(diǎn)相鄰的標(biāo)識(shí)號(hào)小的節(jié)點(diǎn)設(shè)置自身的后方斷路標(biāo)志,與該 節(jié)點(diǎn)相鄰的標(biāo)識(shí)號(hào)大的節(jié)點(diǎn)設(shè)置自身的前方斷路標(biāo)志。
本發(fā)明方法的優(yōu)選實(shí)施例流程如圖5所示,該實(shí)施例示出了在雙向環(huán)形網(wǎng) 絡(luò)中根據(jù)前進(jìn)標(biāo)志進(jìn)行數(shù)據(jù)存儲(chǔ)的流程
步驟501:設(shè)置網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的方向標(biāo)志為前進(jìn)標(biāo)志。
步驟502:判斷當(dāng)前節(jié)點(diǎn)是否設(shè)置了后方斷路標(biāo)志,若是,則執(zhí)行步驟503; 否則執(zhí)行步驟508。
網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)持續(xù)向相鄰節(jié)點(diǎn)發(fā)送空數(shù)據(jù),當(dāng)網(wǎng)絡(luò)中當(dāng)前節(jié)點(diǎn)未接收 到后方節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),當(dāng)前節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志為后方斷路標(biāo)志。
步驟503:更改網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的方向標(biāo)志為后退標(biāo)志。
步驟504:重置網(wǎng)絡(luò)中的后方斷路節(jié)點(diǎn)和前方斷路節(jié)點(diǎn)。
具體地,將查洵到的設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了后方斷路標(biāo)志
節(jié)點(diǎn)的后方節(jié)點(diǎn)同時(shí)取消設(shè)置的后方斷路標(biāo)志,并將設(shè)置了后方斷路標(biāo)志的節(jié)
點(diǎn)作為設(shè)置了前方斷路標(biāo)志節(jié)點(diǎn)的前方節(jié)點(diǎn)同時(shí)取消設(shè)置的前方斷路標(biāo)志。 步驟505:判斷網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值是否
大于待存儲(chǔ)數(shù)據(jù)的索引值與前方節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值,若是,則執(zhí)行步驟507;
否則,執(zhí)行步驟506。
步驟506:將待存儲(chǔ)數(shù)據(jù)傳遞到前方節(jié)點(diǎn),然后返回步驟505。 步驟507:將待存儲(chǔ)數(shù)據(jù)傳遞到前方節(jié)點(diǎn)并在該前方節(jié)點(diǎn)存儲(chǔ)數(shù)據(jù),結(jié)束流程。
步驟508:保持網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的方向標(biāo)志為前進(jìn)標(biāo)志。 步驟509:判斷網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值是否 大于待存儲(chǔ)數(shù)據(jù)的索引值與后方節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值,若是,則執(zhí)行步驟510; 否則,執(zhí)行步驟511。
步驟510:將待存儲(chǔ)數(shù)據(jù)傳遞到后方節(jié)點(diǎn),然后返回步驟509。 步驟511:將待存儲(chǔ)數(shù)據(jù)存儲(chǔ)在當(dāng)前節(jié)點(diǎn),并結(jié)束流程。 下面結(jié)合圖4所示的雙向環(huán)形網(wǎng)絡(luò)詳細(xì)描述應(yīng)用本發(fā)明方法的優(yōu)選實(shí)施 例進(jìn)行數(shù)據(jù)存儲(chǔ)的過(guò)程
布支設(shè)該雙向環(huán)形網(wǎng)絡(luò)中標(biāo)識(shí)號(hào)為37的節(jié)點(diǎn)和標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)之間已經(jīng) 斷開(kāi)連接,因此標(biāo)識(shí)號(hào)為37的節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志為后方斷路標(biāo)志,同 時(shí)標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志為前方斷路標(biāo)志。
在該雙向環(huán)形網(wǎng)絡(luò)中存儲(chǔ)初始方向標(biāo)志為前進(jìn)標(biāo)志的數(shù)據(jù)65時(shí),設(shè)置該 待存儲(chǔ)數(shù)據(jù)的索引值為65,假設(shè)該存儲(chǔ)操作從環(huán)形網(wǎng)絡(luò)中的標(biāo)識(shí)號(hào)為"的節(jié) 點(diǎn)上發(fā)起。判斷待存儲(chǔ)數(shù)據(jù)的索引值65與當(dāng)前標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)的差值大于 待存儲(chǔ)數(shù)據(jù)的索引值65與后方標(biāo)識(shí)號(hào)為37的節(jié)點(diǎn)的差值,將待存儲(chǔ)數(shù)據(jù)65 傳遞到標(biāo)識(shí)號(hào)為37的后方節(jié)點(diǎn)。由于標(biāo)識(shí)號(hào)為37的節(jié)點(diǎn)的斷路標(biāo)志為后方斷 路標(biāo)志,因此更改待存儲(chǔ)數(shù)據(jù)65的方向標(biāo)志為后退標(biāo)志。判斷待存儲(chǔ)數(shù)據(jù)的
索引值65與當(dāng)前標(biāo)識(shí)號(hào)為37的節(jié)點(diǎn)的差值小于待存儲(chǔ)數(shù)據(jù)的索引值65與前 方標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)的差值,將待存儲(chǔ)數(shù)據(jù)65傳遞到標(biāo)識(shí)號(hào)為23的前方節(jié) 點(diǎn);判斷待存儲(chǔ)數(shù)據(jù)的索引值65與當(dāng)前標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)的差值小于待存儲(chǔ) 數(shù)據(jù)的索引值65與前方標(biāo)識(shí)號(hào)為9的節(jié)點(diǎn)的差值,將待存儲(chǔ)數(shù)據(jù)65傳遞到標(biāo) 識(shí)號(hào)為9的前方節(jié)點(diǎn);判斷待存儲(chǔ)數(shù)據(jù)的索引值65與當(dāng)前標(biāo)識(shí)號(hào)為9的節(jié)點(diǎn) 的差值小于待存儲(chǔ)數(shù)據(jù)的索引值65與前方標(biāo)識(shí)號(hào)為5的節(jié)點(diǎn)的差值,將待存 儲(chǔ)數(shù)據(jù)65傳遞到標(biāo)識(shí)號(hào)為5的前方節(jié)點(diǎn);判斷待存儲(chǔ)數(shù)據(jù)的索引值65與當(dāng)前 標(biāo)識(shí)號(hào)為5的節(jié)點(diǎn)的差值小于待存儲(chǔ)數(shù)據(jù)的索引值65與前方標(biāo)識(shí)號(hào)為9的節(jié) 點(diǎn)的差值,將待存儲(chǔ)數(shù)據(jù)65傳遞到標(biāo)識(shí)號(hào)為5的前方節(jié)點(diǎn);判斷待存儲(chǔ)數(shù)據(jù) 的索引值65與當(dāng)前標(biāo)識(shí)號(hào)為82的節(jié)點(diǎn)的差值大于待存儲(chǔ)數(shù)據(jù)的索引值65與 前方標(biāo)識(shí)號(hào)為63的節(jié)點(diǎn)的差值,將待存儲(chǔ)數(shù)據(jù)65傳遞到標(biāo)識(shí)號(hào)為63的前方 節(jié)點(diǎn),并在標(biāo)識(shí)號(hào)為63的節(jié)點(diǎn)上存儲(chǔ)數(shù)據(jù)65 (判斷過(guò)程中當(dāng)索引值與標(biāo)識(shí)的 差值為負(fù)數(shù)時(shí),對(duì)該負(fù)數(shù)取100的補(bǔ)值然后比較大小)。
4支設(shè)該雙向環(huán)形網(wǎng)絡(luò)中標(biāo)識(shí)號(hào)為37的節(jié)點(diǎn)發(fā)生故障,與其前后方的節(jié)點(diǎn) 均失去了聯(lián)系。此時(shí)其前方標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志為后方斷 路標(biāo)志,同時(shí)其后方標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志為前方斷路標(biāo)志。
在該雙向環(huán)形網(wǎng)絡(luò)中存^f諸初始方向標(biāo)志為前進(jìn)標(biāo)志的數(shù)據(jù)38時(shí),設(shè)置該 待存儲(chǔ)數(shù)據(jù)的索引值為38,假設(shè)該存儲(chǔ)操作從環(huán)形網(wǎng)絡(luò)中的標(biāo)識(shí)號(hào)為9的節(jié) 點(diǎn)上發(fā)起。判斷待存儲(chǔ)數(shù)據(jù)的索引值38與當(dāng)前標(biāo)識(shí)號(hào)為9的節(jié)點(diǎn)的差值大于 待存儲(chǔ)數(shù)據(jù)的索引值38與后方標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)的差值,將待存儲(chǔ)數(shù)據(jù)38 傳遞到標(biāo)識(shí)號(hào)為23的后方節(jié)點(diǎn)。由于標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)的斷路標(biāo)志為后方斷 路標(biāo)志,因此更改待存儲(chǔ)數(shù)據(jù)38的方向標(biāo)志為后退標(biāo)志,同時(shí)標(biāo)識(shí)號(hào)為23 的節(jié)點(diǎn)發(fā)送消息查詢(xún)網(wǎng)絡(luò)中設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn),該消息經(jīng)過(guò)標(biāo)識(shí)號(hào)為 9、 5、 82、 63的節(jié)點(diǎn)后查詢(xún)到標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)為網(wǎng)絡(luò)中設(shè)置了前方斷路標(biāo) 志的節(jié)點(diǎn),標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)將標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)作為自身的后方節(jié)點(diǎn),并 且標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)取消自身設(shè)置的后方斷路標(biāo)志;同時(shí)標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn) 扭標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)作為自身的前方節(jié)點(diǎn),并且標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)取消自身
設(shè)置的前方斷路標(biāo)志。此時(shí)網(wǎng)絡(luò)中的方向標(biāo)志為后退標(biāo)志的待存儲(chǔ)數(shù)據(jù)38,
經(jīng)過(guò)比較索引值38與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值和該索引值38與前方節(jié)點(diǎn)標(biāo)識(shí)號(hào) 的差值后,將待存儲(chǔ)數(shù)據(jù)38從標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)傳遞到標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn), 由于標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)和標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)均取消了自身設(shè)置的斷路標(biāo)志, 因此該雙向網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)之間已經(jīng)形成了閉合環(huán)路。此時(shí)判斷待存儲(chǔ)數(shù)據(jù)的 索引值38與當(dāng)前標(biāo)識(shí)號(hào)為48的節(jié)點(diǎn)的差值大于待存儲(chǔ)數(shù)據(jù)的索引值38與前 方標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)的差值,將待存儲(chǔ)數(shù)據(jù)38傳遞到標(biāo)識(shí)號(hào)為23的前方節(jié) 點(diǎn),并在標(biāo)識(shí)號(hào)為23的節(jié)點(diǎn)上存儲(chǔ)數(shù)據(jù)38 (判斷過(guò)程中當(dāng)索引值與標(biāo)識(shí)的差 值為負(fù)數(shù)時(shí),對(duì)該負(fù)數(shù)取100的補(bǔ)值然后比較大小)。
本發(fā)明方法的另 一實(shí)施例流程如圖6所示,該實(shí)施例示出了在雙向環(huán)形網(wǎng) 絡(luò)中根據(jù)后退標(biāo)志進(jìn)行數(shù)據(jù)存儲(chǔ)的流程
步驟601:設(shè)置網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的方向標(biāo)志為后退標(biāo)志。 步驟602:判斷網(wǎng)絡(luò)中當(dāng)前節(jié)點(diǎn)是否設(shè)置了前方斷路標(biāo)志,若是,則執(zhí)行 步驟603;否則,執(zhí)行步驟608。
網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)持續(xù)向相鄰節(jié)點(diǎn)發(fā)送空數(shù)據(jù),當(dāng)網(wǎng)絡(luò)中當(dāng)前節(jié)點(diǎn)未接收 到前方節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),當(dāng)前節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志為前方斷路標(biāo)志。 步驟603:更改網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的方向標(biāo)志為前進(jìn)標(biāo)志。 步驟604:重置網(wǎng)絡(luò)中的前方斷路節(jié)點(diǎn)和后方斷路節(jié)點(diǎn)。 具體地,將查詢(xún)到的設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志 節(jié)點(diǎn)的前方節(jié)點(diǎn)同時(shí)取消設(shè)置的前方斷路標(biāo)志,并將設(shè)置了前方斷路標(biāo)志的節(jié) 點(diǎn)作為設(shè)置了后方斷路標(biāo)志節(jié)點(diǎn)的前方節(jié)點(diǎn)同時(shí)取消設(shè)置的后方斷路標(biāo)志。
步驟605:判斷網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值是否 大于待存儲(chǔ)數(shù)據(jù)的索引值與后方節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值,若是,則執(zhí)行步驟606; 否則,執(zhí)行步驟607。
步驟606:將待存儲(chǔ)數(shù)據(jù)傳遞到后方節(jié)點(diǎn),然后返回步驟605。 步驟607:將待存儲(chǔ)數(shù)據(jù)存儲(chǔ)在當(dāng)前節(jié)點(diǎn),并結(jié)束流程。 步驟608:保持待存儲(chǔ)數(shù)據(jù)的方向標(biāo)志為后退標(biāo)志。
步驟609:判斷網(wǎng)絡(luò)中待存儲(chǔ)數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值是否 大于待存儲(chǔ)數(shù)據(jù)的索引值與前方節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值,若是,則執(zhí)行步驟611; 否則,執(zhí)行步驟610。
步驟610:將待存儲(chǔ)數(shù)據(jù)傳遞到前方節(jié)點(diǎn),然后返回步驟609。 步驟611:將待存儲(chǔ)數(shù)據(jù)傳遞到前方節(jié)點(diǎn)并在該前方節(jié)點(diǎn)存儲(chǔ)該數(shù)據(jù),結(jié)
束流程。
本發(fā)明網(wǎng)絡(luò)的優(yōu)選實(shí)施例框圖如圖7所示
該網(wǎng)絡(luò)包括斷路標(biāo)志設(shè)置單元710,方向標(biāo)志設(shè)置單元720和數(shù)據(jù)傳遞 單元730。其中,斷路標(biāo)志設(shè)置單元710用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到空數(shù)據(jù) 時(shí),設(shè)置該節(jié)點(diǎn)的斷路標(biāo)志;方向標(biāo)志設(shè)置單元720用于設(shè)置網(wǎng)絡(luò)中待處理數(shù) 據(jù)的方向標(biāo)志,或根據(jù)斷路標(biāo)志更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的方向標(biāo)志;數(shù)據(jù)傳遞 單元730用于根據(jù)設(shè)置的方向標(biāo)志在網(wǎng)絡(luò)中傳遞數(shù)據(jù)。
斷路標(biāo)志設(shè)置單元包括空數(shù)據(jù)發(fā)送單元711,前方斷路標(biāo)志設(shè)置單元712 和后方斷路標(biāo)志設(shè)置單元713。其中,空數(shù)據(jù)發(fā)送單元711用于向網(wǎng)絡(luò)中的各 個(gè)節(jié)點(diǎn)持續(xù)發(fā)送空數(shù)據(jù);前方斷路標(biāo)志設(shè)置單元712用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接 收到前方發(fā)送的空數(shù)據(jù)時(shí),設(shè)置該節(jié)點(diǎn)的前方斷路標(biāo)志;后方斷路標(biāo)志設(shè)置單 元713用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到后方發(fā)送的空數(shù)據(jù)時(shí),設(shè)置該節(jié)點(diǎn)的后方 斷路標(biāo)志。
與斷路標(biāo)志設(shè)置單元710相連的方向標(biāo)志設(shè)置單元720包括初始方向標(biāo) 志設(shè)置單元721和方向標(biāo)志更改單元722。其中,初始方向標(biāo)志設(shè)置單元721 用于設(shè)置網(wǎng)絡(luò)中待處理數(shù)據(jù)的前進(jìn)標(biāo)志,或設(shè)置網(wǎng)絡(luò)中待處理數(shù)據(jù)的后退標(biāo) 志;方向標(biāo)志更改單元722用于當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)傳遞到設(shè)置了后方斷路標(biāo) 志的節(jié)點(diǎn)時(shí),更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的前進(jìn)標(biāo)志為后退標(biāo)志,或當(dāng)網(wǎng)絡(luò)中待處 理數(shù)據(jù)傳遞到設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)時(shí),更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的后退標(biāo) 志為前進(jìn)才示志。
與斷路標(biāo)志設(shè)置單元710相連的數(shù)據(jù)傳遞單元730包括前向數(shù)據(jù)傳遞單 元731和后向數(shù)據(jù)傳遞單元732。其中,前向數(shù)據(jù)傳遞單元731用于根據(jù)前進(jìn)標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增 大的方向傳遞待處理數(shù)據(jù)。該前向數(shù)據(jù)傳遞單元731包括前向數(shù)據(jù)判斷單元 732,用于比較沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大方向傳遞的待處理數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值和該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值;前向數(shù)據(jù)執(zhí)行單元733, 用于當(dāng)待處理數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié) 點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將該^據(jù)傳遞到下一節(jié)點(diǎn),當(dāng)該凄t據(jù)的索引值與當(dāng)前節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),在當(dāng)前節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn) 行操作;前向節(jié)點(diǎn)重置單元734,用于將查詢(xún)到的設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn) 作為設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)的后方節(jié)點(diǎn)同時(shí)取消設(shè)置的后方斷路節(jié)點(diǎn),并 將設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn)同 時(shí)取消設(shè)置的前方斷路節(jié)點(diǎn)。
后向數(shù)據(jù)傳遞單元736用于根據(jù)后退標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的 方向傳遞待處理凝:據(jù)。后向凄t據(jù)傳遞單元736包括后向翁:據(jù)判斷單元737,用 于比較沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小方向傳遞的待處理數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào) 的差值和該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值;后向數(shù)據(jù)執(zhí)行單元738,用于當(dāng) 該數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的 差值時(shí),將該數(shù)據(jù)傳遞到下一節(jié)點(diǎn),當(dāng)該數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差 值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將該數(shù)據(jù)傳遞到下一節(jié)點(diǎn)并在下 一節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作;后向節(jié)點(diǎn)重置單元739,用于將查詢(xún)到的設(shè)置了后方 斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn)同時(shí)取消設(shè)置的 前方斷路標(biāo)志,并將設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了后方斷路標(biāo)志的節(jié) 點(diǎn)的前方節(jié)點(diǎn)同時(shí)取消設(shè)置的后方斷路標(biāo)志。
雖然通過(guò)實(shí)施例描繪了本發(fā)明,本領(lǐng)域普通技術(shù)人員知道,本發(fā)明有許多 變形和變化而不脫離本發(fā)明的精神,希望所附的權(quán)利要求包括這些變形和變化 而不脫離本發(fā)明的精神。
權(quán)利要求
1、一種基于分布式哈希表的數(shù)據(jù)處理方法,其特征在于,包括步驟A、設(shè)置待處理數(shù)據(jù)的方向標(biāo)志,并根據(jù)所述方向標(biāo)志在網(wǎng)絡(luò)中傳遞該數(shù)據(jù);B、當(dāng)所述待處理數(shù)據(jù)傳遞到設(shè)置了斷路標(biāo)志的節(jié)點(diǎn)時(shí),該數(shù)據(jù)沿與所述方向標(biāo)志相反的方向傳遞。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟A包括 設(shè)置待處理數(shù)據(jù)的前進(jìn)標(biāo)志,并根據(jù)所述前進(jìn)標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞該lt據(jù);或設(shè)置待處理數(shù)據(jù)的后退標(biāo)志,并根據(jù)所述后退標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào) 減小的方向傳遞該^:據(jù)。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟B中設(shè)置斷路標(biāo) 志節(jié)點(diǎn)包括網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)持續(xù)向相鄰節(jié)點(diǎn)發(fā)送空數(shù)據(jù);當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志。
4 、根據(jù)權(quán)利要求3所述的方法,其特征在于,所述當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的斷路標(biāo)志包括當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到前方節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的前方斷路標(biāo)志;當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到后方節(jié)點(diǎn)發(fā)送的空數(shù)據(jù)時(shí),該節(jié)點(diǎn)設(shè)置自身的后 方斷路標(biāo)志。
5、 根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)沿前 進(jìn)標(biāo)志傳遞時(shí),所述步驟B包括當(dāng)所述待處理數(shù)據(jù)傳遞到設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)時(shí),該節(jié)點(diǎn)更改待處 理數(shù)據(jù)的方向標(biāo)志為后退標(biāo)志,并沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向傳遞數(shù)據(jù)。
6、 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的 方向傳遞數(shù)據(jù)包括當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),將所述lt據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),將所述lt據(jù)傳遞到下一節(jié)點(diǎn)并在下一節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作.
7、 根據(jù)權(quán)利要求5所述的方法,其特征在于,所述步驟B還包括 將查詢(xún)到的設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為所述設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)的后方節(jié)點(diǎn),并取消所述設(shè)置的后方斷路標(biāo)志;和將所述設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前 方節(jié)點(diǎn),并取消所述設(shè)置的前方斷路標(biāo)志。
8、 根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)沿后 退標(biāo)志傳遞時(shí),所述步驟B包括當(dāng)所述待處理數(shù)據(jù)傳遞到設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)時(shí),該節(jié)點(diǎn)更改待處 理數(shù)據(jù)的方向標(biāo)志為前進(jìn)標(biāo)志,并沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞數(shù)據(jù)。
9、 根據(jù)權(quán)利要求8所述的方法,其特征在于,所述沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的 方向傳遞數(shù)據(jù)包括當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),將所述數(shù)據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn) 標(biāo)識(shí)號(hào)的差值時(shí),在當(dāng)前節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
10、 根據(jù)權(quán)利要求8所述的方法,其特征在于,所述步驟8還包括 將查詢(xún)到的設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為所述設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn),并取消所述設(shè)置的前方斷路標(biāo)志;和將所述設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)的前 方節(jié)點(diǎn),并取消所述設(shè)置的后方斷路標(biāo)志。
11、 一種基于分布式哈希表的數(shù)據(jù)處理網(wǎng)絡(luò),其特征在于,包括 斷路標(biāo)志設(shè)置單元,用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到空數(shù)據(jù)時(shí),設(shè)置該節(jié)點(diǎn)的斷路標(biāo)志;方向標(biāo)志設(shè)置單元,用于設(shè)置網(wǎng)絡(luò)中待處理數(shù)據(jù)的方向標(biāo)志,或根據(jù)所述 斷路標(biāo)志更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的方向標(biāo)志;數(shù)據(jù)傳遞單元,用于根據(jù)所述方向標(biāo)志在網(wǎng)絡(luò)中傳遞數(shù)據(jù)。
12、 根據(jù)權(quán)利要求11所述的網(wǎng)絡(luò),其特征在于,所述斷路標(biāo)志設(shè)置單元 包括空數(shù)據(jù)發(fā)送單元,用于向網(wǎng)絡(luò)中的各個(gè)節(jié)點(diǎn)持續(xù)發(fā)送空數(shù)據(jù);前方斷路標(biāo)志設(shè)置單元,用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到前方發(fā)送的空數(shù)據(jù)時(shí),設(shè)置該節(jié)點(diǎn)的前方斷^4示志;后方斷路標(biāo)志設(shè)置單元,用于當(dāng)網(wǎng)絡(luò)中的節(jié)點(diǎn)未接收到后方發(fā)送的空數(shù)據(jù)時(shí),設(shè)置該節(jié)點(diǎn)的后方斷路標(biāo)志。
13、 根據(jù)權(quán)利要求11所述的網(wǎng)絡(luò),其特征在于,所述方向標(biāo)志設(shè)置單元 包括初始方向標(biāo)志設(shè)置單元,用于設(shè)置網(wǎng)絡(luò)中待處理數(shù)據(jù)的前進(jìn)標(biāo)志,或設(shè)置 網(wǎng)絡(luò)中待處理數(shù)據(jù)的后退標(biāo)志;方向標(biāo)志更改單元,用于當(dāng)網(wǎng)絡(luò)中待處理數(shù)據(jù)傳遞到設(shè)置了后方斷路標(biāo)志 的節(jié)點(diǎn)時(shí),更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的前進(jìn)標(biāo)志為后退標(biāo)志;或當(dāng)網(wǎng)絡(luò)中待處理 數(shù)據(jù)傳遞到設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)時(shí),更改網(wǎng)絡(luò)中待處理數(shù)據(jù)的后退標(biāo)志 為前進(jìn)才示志。
14、 根據(jù)權(quán)利要求11所述的網(wǎng)絡(luò),其特征在于,所述數(shù)據(jù)傳遞單元包括 前向數(shù)據(jù)傳遞單元,用于根據(jù)前進(jìn)標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大的方向傳遞待處理數(shù)據(jù);后向數(shù)據(jù)傳遞單元,用于根據(jù)后退標(biāo)志在網(wǎng)絡(luò)中沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小的方向 傳遞待處理數(shù)據(jù)。
15、 根據(jù)權(quán)利要求14所述的網(wǎng)絡(luò),其特征在于,所述前向數(shù)據(jù)傳遞單元 包括前向數(shù)據(jù)判斷單元,用于比較沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)增大方向傳遞的待處理數(shù)據(jù)的 索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值和該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值;前向數(shù)據(jù)執(zhí)行單元,用于當(dāng)所述待處理數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的 差值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將所述l丈據(jù)傳遞到下一節(jié)點(diǎn); 當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí) 號(hào)的差值時(shí),在當(dāng)前節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
16、 根據(jù)權(quán)利要求14所述的網(wǎng)絡(luò),其特征在于,所述前向數(shù)據(jù)傳遞單元 還包括前向節(jié)點(diǎn)重置單元,用于將查詢(xún)到的設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè) 置了后方斷路標(biāo)志的節(jié)點(diǎn)的后方節(jié)點(diǎn),并取消所述設(shè)置的后方斷路標(biāo)志;和將 所述設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn), 并取消所述設(shè)置的前方斷路標(biāo)志。
17、 根據(jù)權(quán)利要求14所述的網(wǎng)絡(luò),其特征在于,所述后向數(shù)據(jù)傳遞單元 包括后向數(shù)據(jù)判斷單元,用于比較沿節(jié)點(diǎn)標(biāo)識(shí)號(hào)減小方向傳遞的待處理數(shù)據(jù)的 索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值和該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值;后向數(shù)據(jù)執(zhí)行單元,用于當(dāng)所述數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值小 于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值時(shí),將所述數(shù)據(jù)傳遞到下一節(jié)點(diǎn);當(dāng)所述 數(shù)據(jù)的索引值與當(dāng)前節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差值大于該索引值與下一節(jié)點(diǎn)標(biāo)識(shí)號(hào)的差 值時(shí),將所述數(shù)據(jù)傳遞到下一節(jié)點(diǎn)并在下一節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行操作。
18、 根據(jù)權(quán)利要求14所述的網(wǎng)絡(luò),其特征在于,所述后向數(shù)據(jù)傳遞單元 還包括后向節(jié)點(diǎn)重置單元,用于將查詢(xún)到的設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè) 置了前方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn),并取消所述設(shè)置的前方斷路標(biāo)志;和將 所述設(shè)置了前方斷路標(biāo)志的節(jié)點(diǎn)作為設(shè)置了后方斷路標(biāo)志的節(jié)點(diǎn)的前方節(jié)點(diǎn), 并取消所述設(shè)置的后方斷路標(biāo)志。
全文摘要
本發(fā)明公開(kāi)了一種基于分布式哈希表的數(shù)據(jù)處理方法,包括步驟A.設(shè)置待處理數(shù)據(jù)的方向標(biāo)志,并根據(jù)所述方向標(biāo)志在網(wǎng)絡(luò)中傳遞該數(shù)據(jù);B.當(dāng)所述待處理數(shù)據(jù)傳遞到設(shè)置了斷路標(biāo)志的節(jié)點(diǎn)時(shí),該數(shù)據(jù)沿與所述方向標(biāo)志相反的方向傳遞。本發(fā)明還公開(kāi)了一種基于分布式哈希表的數(shù)據(jù)處理網(wǎng)絡(luò),包括斷路標(biāo)志設(shè)置單元,方向標(biāo)志設(shè)置單元和數(shù)據(jù)傳遞單元。應(yīng)用本發(fā)明雙向處理數(shù)據(jù)的方法,極大的增強(qiáng)了環(huán)形網(wǎng)絡(luò)的可靠性和可管理性,使得整個(gè)網(wǎng)絡(luò)具有了故障保護(hù)能力,從而降低了網(wǎng)絡(luò)故障的影響范圍,不易造成網(wǎng)絡(luò)癱瘓,提高了網(wǎng)絡(luò)的使用性能。
文檔編號(hào)H04L12/437GK101193032SQ20061016061
公開(kāi)日2008年6月4日 申請(qǐng)日期2006年11月29日 優(yōu)先權(quán)日2006年11月29日
發(fā)明者銳 曲 申請(qǐng)人:銳 曲