本發(fā)明涉及數(shù)據(jù)流傳播系統(tǒng)及方法,更具體地,涉及用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)及方法。
背景技術(shù):
目前,隨著基于網(wǎng)絡(luò)的應(yīng)用的日益廣泛以及不同領(lǐng)域(例如金融領(lǐng)域)的業(yè)務(wù)種類的日益豐富,對特定的數(shù)據(jù)流(例如金融領(lǐng)域中的記賬數(shù)據(jù))進行高效地傳播變得越來越重要。
在現(xiàn)有的基于區(qū)塊鏈網(wǎng)絡(luò)(即由多個數(shù)據(jù)塊單元作為成員節(jié)點(即區(qū)塊)而構(gòu)成的網(wǎng)絡(luò),其中使用密碼學(xué)方法將所述多個數(shù)據(jù)塊單元相關(guān)聯(lián)在一起,不存在中心節(jié)點,并且除了被加密外,區(qū)塊鏈內(nèi)的數(shù)據(jù)對所有成員節(jié)點而言是公開的,并且一旦數(shù)據(jù)信息經(jīng)過驗證并被添加到區(qū)塊鏈之后則不可篡改)的技術(shù)方案中,典型地基于組播的方式實現(xiàn)成員節(jié)點之間的數(shù)據(jù)流的傳播:即相同數(shù)據(jù)流的目標(biāo)成員節(jié)點加入相同的組而共享一條數(shù)據(jù)流。
然而,上述現(xiàn)有的技術(shù)方案存在如下問題:由于數(shù)據(jù)流的組播傳播方式不具有糾錯機制,故在由于數(shù)據(jù)通道堵塞而發(fā)生丟包或錯包后難于恢復(fù)或修正。
因此,存在如下需求:提供具有高的數(shù)據(jù)流傳輸效率和穩(wěn)定性的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)及方法。
技術(shù)實現(xiàn)要素:
為了解決上述現(xiàn)有技術(shù)方案所存在的問題,本發(fā)明提出了具有高的數(shù)據(jù)流傳輸效率和穩(wěn)定性的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)及方法。
本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的:
一種用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng),其包括多個成員節(jié)點,所述多個成員節(jié)點彼此經(jīng)由網(wǎng)絡(luò)連接以構(gòu)成區(qū)塊鏈網(wǎng)絡(luò),其中,所述多個成員節(jié)點中的每一個能夠通過與一個或多個相鄰的成員節(jié)點進行預(yù)定的認證操作的方式將所述一個或多個相鄰的成員節(jié)點添加為鄰居節(jié)點,并且所述多個成員節(jié)點中的每一個通過單播的方式向其鄰居節(jié)點傳送構(gòu)成數(shù)據(jù)流的數(shù)據(jù)包。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個基于TCP/IP協(xié)議所定義的三次握手方式實施所述認證操作。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個在成功接收到數(shù)據(jù)包后向發(fā)送該數(shù)據(jù)包的成員節(jié)點發(fā)送回確認響應(yīng)。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個在向其鄰居節(jié)點傳送數(shù)據(jù)包后在預(yù)定的周期內(nèi)未收到某一鄰居節(jié)點發(fā)送回的確認響應(yīng),則該成員節(jié)點向該鄰居節(jié)點重復(fù)發(fā)送所述數(shù)據(jù)包。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個在成功接收到數(shù)據(jù)包后繼續(xù)向該成員節(jié)點的除發(fā)送該數(shù)據(jù)包的成員節(jié)點之外的鄰居節(jié)點傳送所述數(shù)據(jù)包。
在上面所公開的方案中,優(yōu)選地,在所述多個成員節(jié)點中的一個成員節(jié)點1具有多個鄰居節(jié)點的情況下,該成員節(jié)點能夠通過預(yù)定的路由選擇算法確定最優(yōu)鄰居節(jié)點,并且將數(shù)據(jù)包優(yōu)先傳送至所述最優(yōu)鄰居節(jié)點,而將除最優(yōu)鄰居節(jié)點之外的鄰居節(jié)點作為備選節(jié)點。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個周期性地向每個鄰居節(jié)點發(fā)送心跳包,以探測鄰居節(jié)點的運行狀態(tài),并且如果在預(yù)定的時間段內(nèi)沒有收到鄰居節(jié)點對所述心跳包的回應(yīng),則確定未傳送回應(yīng)鄰居節(jié)點發(fā)生故障,并隨之基于預(yù)定的規(guī)則將備選節(jié)點中的一個作為新的最優(yōu)鄰居節(jié)點。
本發(fā)明的目的也可以通過以下技術(shù)方案實現(xiàn):
一種用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法,所述用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法包括下列步驟:
(A1)多個成員節(jié)點彼此經(jīng)由網(wǎng)絡(luò)連接以構(gòu)成區(qū)塊鏈網(wǎng)絡(luò);
(A2)所述多個成員節(jié)點中的每一個通過與一個或多個相鄰的成員節(jié)點進行預(yù)定的認證操作的方式將所述一個或多個相鄰的成員節(jié)點添加為鄰居節(jié)點;
(A3)所述多個成員節(jié)點中的每一個通過單播的方式向其鄰居節(jié)點傳送構(gòu)成數(shù)據(jù)流的數(shù)據(jù)包。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個基于TCP/IP協(xié)議所定義的三次握手方式實施所述認證操作。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個在成功接收到數(shù)據(jù)包后向發(fā)送該數(shù)據(jù)包的成員節(jié)點發(fā)送回確認響應(yīng)。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個在向其鄰居節(jié)點傳送數(shù)據(jù)包后在預(yù)定的周期內(nèi)未收到某一鄰居節(jié)點發(fā)送回的確認響應(yīng),則該成員節(jié)點向該鄰居節(jié)點重復(fù)發(fā)送所述數(shù)據(jù)包。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個在成功接收到數(shù)據(jù)包后繼續(xù)向該成員節(jié)點的除發(fā)送該數(shù)據(jù)包的成員節(jié)點之外的鄰居節(jié)點傳送所述數(shù)據(jù)包。
在上面所公開的方案中,優(yōu)選地,在所述多個成員節(jié)點中的一個成員節(jié)點具有多個鄰居節(jié)點的情況下,該成員節(jié)點能夠通過預(yù)定的路由選擇算法確定最優(yōu)鄰居節(jié)點,并且將數(shù)據(jù)包優(yōu)先傳送至所述最優(yōu)鄰居節(jié)點,而將除最優(yōu)鄰居節(jié)點之外的鄰居節(jié)點作為備選節(jié)點。
在上面所公開的方案中,優(yōu)選地,所述多個成員節(jié)點中的每一個周期性地向每個鄰居節(jié)點發(fā)送心跳包,以探測鄰居節(jié)點的運行狀態(tài),并且如果在預(yù)定的時間段內(nèi)沒有收到鄰居節(jié)點對所述心跳包的回應(yīng),則確定未傳送回應(yīng)鄰居節(jié)點發(fā)生故障,并隨之基于預(yù)定的規(guī)則將備選節(jié)點中的一個作為新的最優(yōu)鄰居節(jié)點。
本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)及方法具有如下優(yōu)點:由于在區(qū)塊鏈網(wǎng)絡(luò)的成員節(jié)點之間使用單播的方式傳輸數(shù)據(jù)流,故具有高的數(shù)據(jù)流傳輸效率和穩(wěn)定性。
附圖說明
結(jié)合附圖,本發(fā)明的技術(shù)特征以及優(yōu)點將會被本領(lǐng)域技術(shù)人員更好地理解,其中:
圖1是根據(jù)本發(fā)明的實施例的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)的示意性結(jié)構(gòu)圖;
圖2是根據(jù)本發(fā)明的實施例的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法的流程圖。
具體實施方式
圖1是根據(jù)本發(fā)明的實施例的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)的示意性結(jié)構(gòu)圖。如圖1所示,本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)包括多個成員節(jié)點1,所述多個成員節(jié)點1彼此經(jīng)由網(wǎng)絡(luò)連接以構(gòu)成區(qū)塊鏈網(wǎng)絡(luò),其中,所述多個成員節(jié)點1中的每一個能夠通過與一個或多個相鄰的成員節(jié)點1進行預(yù)定的認證操作的方式將所述一個或多個相鄰的成員節(jié)點1添加為鄰居節(jié)點,并且所述多個成員節(jié)點1中的每一個通過單播的方式向其鄰居節(jié)點傳送構(gòu)成數(shù)據(jù)流的數(shù)據(jù)包。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)中,所述多個成員節(jié)點1中的每一個基于TCP/IP協(xié)議所定義的三次握手方式實施所述認證操作。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)中,所述多個成員節(jié)點1中的每一個在成功接收到數(shù)據(jù)包后向發(fā)送該數(shù)據(jù)包的成員節(jié)點發(fā)送回確認響應(yīng)。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)中,所述多個成員節(jié)點1中的每一個在向其鄰居節(jié)點傳送數(shù)據(jù)包后在預(yù)定的周期內(nèi)未收到某一鄰居節(jié)點發(fā)送回的確認響應(yīng),則該成員節(jié)點1向該鄰居節(jié)點重復(fù)發(fā)送所述數(shù)據(jù)包。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)中,所述多個成員節(jié)點1中的每一個在成功接收到數(shù)據(jù)包后繼續(xù)向該成員節(jié)點1的除發(fā)送該數(shù)據(jù)包的成員節(jié)點1之外的鄰居節(jié)點傳送所述數(shù)據(jù)包。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)中,在所述多個成員節(jié)點1中的一個成員節(jié)點1具有多個鄰居節(jié)點的情況下,該成員節(jié)點1能夠通過預(yù)定的路由選擇算法(例如基于延遲時間、路徑長度、AS(自治路由協(xié)議)等等的路由選擇算法)確定最優(yōu)鄰居節(jié)點,并且將數(shù)據(jù)包優(yōu)先傳送至所述最優(yōu)鄰居節(jié)點,而將除最優(yōu)鄰居節(jié)點之外的鄰居節(jié)點作為備選節(jié)點。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)中,所述多個成員節(jié)點1中的每一個周期性地向每個鄰居節(jié)點發(fā)送心跳包,以探測鄰居節(jié)點的運行狀態(tài),并且如果在預(yù)定的時間段內(nèi)沒有收到鄰居節(jié)點對所述心跳包的回應(yīng),則確定未傳送回應(yīng)鄰居節(jié)點發(fā)生故障,并隨之基于預(yù)定的規(guī)則將備選節(jié)點中的一個作為新的最優(yōu)鄰居節(jié)點。
由上可見,本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播系統(tǒng)具有下列優(yōu)點:由于在區(qū)塊鏈網(wǎng)絡(luò)的成員節(jié)點之間使用單播的方式傳輸數(shù)據(jù)流,故具有高的數(shù)據(jù)流傳輸效率和穩(wěn)定性。
圖2是根據(jù)本發(fā)明的實施例的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法的流程圖。如圖2所示,本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法包括下列步驟:(A1)多個成員節(jié)點彼此經(jīng)由網(wǎng)絡(luò)連接以構(gòu)成區(qū)塊鏈網(wǎng)絡(luò);
(A2)所述多個成員節(jié)點中的每一個通過與一個或多個相鄰的成員節(jié)點進行預(yù)定的認證操作的方式將所述一個或多個相鄰的成員節(jié)點添加為鄰居節(jié)點;(A3)所述多個成員節(jié)點中的每一個通過單播的方式向其鄰居節(jié)點傳送構(gòu)成數(shù)據(jù)流的數(shù)據(jù)包。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法中,所述多個成員節(jié)點中的每一個基于TCP/IP協(xié)議所定義的三次握手方式實施所述認證操作。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法中,所述多個成員節(jié)點中的每一個在成功接收到數(shù)據(jù)包后向發(fā)送該數(shù)據(jù)包的成員節(jié)點發(fā)送回確認響應(yīng)。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法中,所述多個成員節(jié)點中的每一個在向其鄰居節(jié)點傳送數(shù)據(jù)包后在預(yù)定的周期內(nèi)未收到某一鄰居節(jié)點發(fā)送回的確認響應(yīng),則該成員節(jié)點向該鄰居節(jié)點重復(fù)發(fā)送所述數(shù)據(jù)包。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法中,所述多個成員節(jié)點中的每一個在成功接收到數(shù)據(jù)包后繼續(xù)向該成員節(jié)點的除發(fā)送該數(shù)據(jù)包的成員節(jié)點之外的鄰居節(jié)點傳送所述數(shù)據(jù)包。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法中,在所述多個成員節(jié)點中的一個成員節(jié)點具有多個鄰居節(jié)點的情況下,該成員節(jié)點能夠通過預(yù)定的路由選擇算法(例如基于延遲時間、路徑長度、AS(自治路由協(xié)議)等等的路由選擇算法)確定最優(yōu)鄰居節(jié)點,并且將數(shù)據(jù)包優(yōu)先傳送至所述最優(yōu)鄰居節(jié)點,而將除最優(yōu)鄰居節(jié)點之外的鄰居節(jié)點作為備選節(jié)點。
優(yōu)選地,在本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法中,所述多個成員節(jié)點中的每一個周期性地向每個鄰居節(jié)點發(fā)送心跳包,以探測鄰居節(jié)點的運行狀態(tài),并且如果在預(yù)定的時間段內(nèi)沒有收到鄰居節(jié)點對所述心跳包的回應(yīng),則確定未傳送回應(yīng)鄰居節(jié)點發(fā)生故障,并隨之基于預(yù)定的規(guī)則將備選節(jié)點中的一個作為新的最優(yōu)鄰居節(jié)點。
由上可見,本發(fā)明所公開的用于區(qū)塊鏈網(wǎng)絡(luò)的數(shù)據(jù)流傳播方法具有下列優(yōu)點:由于在區(qū)塊鏈網(wǎng)絡(luò)的成員節(jié)點之間使用單播的方式傳輸數(shù)據(jù)流,故具有高的數(shù)據(jù)流傳輸效率和穩(wěn)定性。
盡管本發(fā)明是通過上述的優(yōu)選實施方式進行描述的,但是其實現(xiàn)形式并不局限于上述的實施方式。應(yīng)該認識到:在不脫離本發(fā)明主旨和范圍的情況下,本領(lǐng)域技術(shù)人員可以對本發(fā)明做出不同的變化和修改。