版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
區(qū)塊鏈網(wǎng)絡(luò)通信高等職業(yè)教育新目錄新專(zhuān)標(biāo)電子與信息大類(lèi)教材區(qū)塊鏈部署與運(yùn)維第六章01認(rèn)識(shí)網(wǎng)絡(luò)通信模型在計(jì)算機(jī)網(wǎng)絡(luò)中,我們通過(guò)協(xié)議來(lái)進(jìn)行通信,那么區(qū)塊鏈節(jié)點(diǎn)之間是如何進(jìn)行通信的呢?任務(wù)場(chǎng)景認(rèn)識(shí)網(wǎng)絡(luò)通信模型任務(wù)布置:學(xué)習(xí)OSI參考模型的基本概念。學(xué)習(xí)TCP/IP參考模型的基本概念。使用虛擬機(jī)計(jì)算機(jī)軟件(VMwareWorkstation),搭建虛擬局域網(wǎng)。認(rèn)識(shí)網(wǎng)絡(luò)通信模型配置VMware虛擬機(jī)軟件的虛擬網(wǎng)絡(luò)設(shè)置(選擇使用VMnet8網(wǎng)卡進(jìn)行配置),如圖6-1所示。認(rèn)識(shí)網(wǎng)絡(luò)通信模型類(lèi)似于網(wǎng)卡配置,可以設(shè)置子網(wǎng)和子網(wǎng)掩碼,在如圖6-2所示的①中進(jìn)行修改。認(rèn)識(shí)網(wǎng)絡(luò)通信模型在②中設(shè)置網(wǎng)關(guān),配置如圖6-3所示。認(rèn)識(shí)網(wǎng)絡(luò)通信模型在③中設(shè)置網(wǎng)段下的IP地址使用DHCP協(xié)議,獲取IP地址范圍,配置如圖6-4所示。認(rèn)識(shí)網(wǎng)絡(luò)通信模型創(chuàng)建兩臺(tái)虛擬機(jī),修改網(wǎng)卡配置文件內(nèi)容,如圖6-5所示。認(rèn)識(shí)網(wǎng)絡(luò)通信模型重啟網(wǎng)卡服務(wù),并使用ipa命令查看IP地址,如圖6-6所示。認(rèn)識(shí)網(wǎng)絡(luò)通信模型使用ping對(duì)方IP地址c4命令查看與對(duì)方的連通性,如圖6-7和圖6-8所示。認(rèn)識(shí)網(wǎng)絡(luò)通信模型填寫(xiě)任務(wù)評(píng)價(jià)表,如6-1所示。認(rèn)識(shí)網(wǎng)絡(luò)通信模型02使用RPC協(xié)議任務(wù)場(chǎng)景在區(qū)塊鏈中,節(jié)點(diǎn)間可以通過(guò)RPC協(xié)議互相調(diào)用對(duì)方的服務(wù)來(lái)完成某些任務(wù),或查詢(xún)數(shù)據(jù)。使用RPC協(xié)議任務(wù)布置:學(xué)習(xí)RPC協(xié)議的基本概念。學(xué)習(xí)FISCOBCOS的RPC模塊。學(xué)習(xí)FISCOBCOS的RPC模塊的簡(jiǎn)單命令。使用RPC協(xié)議RPC協(xié)議全名為遠(yuǎn)程過(guò)程調(diào)用協(xié)議(RemoteProcedureCallProtocol),允許運(yùn)行于一臺(tái)計(jì)算機(jī)上的程序調(diào)用另一臺(tái)計(jì)算機(jī)的子程序,而程序員無(wú)須額外地為這個(gè)交互作用編程。RPC協(xié)議使用RPC協(xié)議目前RPC協(xié)議是P2P網(wǎng)絡(luò)中運(yùn)用較廣泛的通信協(xié)議之一,是目前區(qū)塊鏈節(jié)點(diǎn)通信的主流協(xié)議之一。RPC協(xié)議遠(yuǎn)程調(diào)用的目的是實(shí)現(xiàn)服務(wù)的遠(yuǎn)程調(diào)用,如有節(jié)點(diǎn)A和節(jié)點(diǎn)B,現(xiàn)有調(diào)用業(yè)務(wù)部署于節(jié)點(diǎn)A,需要調(diào)用節(jié)點(diǎn)B的函數(shù)或方法,此時(shí)可以借助RPC協(xié)議通過(guò)網(wǎng)絡(luò)表達(dá)調(diào)用的語(yǔ)義和傳達(dá)調(diào)用的數(shù)據(jù)。使用RPC協(xié)議如圖6-9所示為基于RPC協(xié)議節(jié)點(diǎn)A與節(jié)點(diǎn)B的通信流程。使用RPC協(xié)議在上述流程中,Stub表示存根,節(jié)點(diǎn)AStub的作用為保存節(jié)點(diǎn)B的地址信息,將節(jié)點(diǎn)A的請(qǐng)求參數(shù)數(shù)據(jù)信息打包,再向下傳輸通過(guò)網(wǎng)絡(luò)發(fā)送。節(jié)點(diǎn)BStub的作用為接收節(jié)點(diǎn)A的請(qǐng)求數(shù)據(jù)信息并解析,然后調(diào)用本地服務(wù)進(jìn)行相應(yīng)處理。使用RPC協(xié)議FISCOBCOS的RPC模塊目前,包括FISCOBCOS等在內(nèi)的經(jīng)典區(qū)塊鏈技術(shù)都具備RPC模塊,可用于支持基于RPC協(xié)議的遠(yuǎn)程功能調(diào)用。RPC模塊負(fù)責(zé)提供FISCOBCOS的外部接口,客戶(hù)端通過(guò)RPC發(fā)送請(qǐng)求,RPC通過(guò)調(diào)用賬本管理模塊和P2P模塊獲取相關(guān)響應(yīng),并將響應(yīng)返回給客戶(hù)端。其中,賬本管理模塊通過(guò)多賬本機(jī)制管理區(qū)塊鏈底層的相關(guān)模塊,具體包括共識(shí)模塊、同步模塊、區(qū)塊管理模塊、交易池模塊及區(qū)塊鏈驗(yàn)證器。使用RPC協(xié)議如圖6-10所示為RPC模塊在FISCOBCOS中支持的功能。使用RPC協(xié)議客戶(hù)端請(qǐng)求jsonrpc:指定JSON-RPC協(xié)議版本的字符串,必須準(zhǔn)確地寫(xiě)為“2.0”。method:調(diào)用方法的名稱(chēng)。params:調(diào)用方法所需要的參數(shù),方法參數(shù)可選。id:已建立客戶(hù)端的唯一標(biāo)識(shí)ID,ID必須是一個(gè)字符串、數(shù)值或NULL空值。使用RPC協(xié)議01020304jsonrpc:指定JSON-RPC協(xié)議版本的字符串,必須準(zhǔn)確地寫(xiě)為“2.0"。服務(wù)端響應(yīng)result:正確結(jié)果字段。eror:錯(cuò)誤結(jié)果字段。id:響應(yīng)id。使用RPC協(xié)議獲取節(jié)點(diǎn)版本信息。調(diào)用方法method為getClientVersion,操作如下:使用RPC協(xié)議FISCOBCOS的RPC模塊的簡(jiǎn)單命令輸出內(nèi)容對(duì)應(yīng)解釋?zhuān)垂?jié)點(diǎn)獲取信息的說(shuō)明,如表6-2所示。使用RPC協(xié)議獲取區(qū)塊高度。調(diào)用方法method為getBlockNumber,操作如下:使用RPC協(xié)議獲取群組節(jié)點(diǎn)信息。通過(guò)指定方法getGroupPeers獲取指定群組內(nèi)的共識(shí)節(jié)點(diǎn)和觀察節(jié)點(diǎn)列表,如下命令為查詢(xún)?nèi)航M編號(hào)為1的節(jié)點(diǎn)列表:使用RPC協(xié)議查詢(xún)?nèi)航MID列表。通過(guò)方法getGroupList獲取信息,操作如下:使用RPC協(xié)議填寫(xiě)任務(wù)評(píng)價(jià)表,如表6-3所示。使用RPC協(xié)議03搭建P2P網(wǎng)絡(luò)任務(wù)布置:學(xué)習(xí)P2P網(wǎng)絡(luò)通信的基本知識(shí)。學(xué)習(xí)FISCOBCOS的網(wǎng)絡(luò)傳輸協(xié)議。掌握搭建P2P網(wǎng)絡(luò)和添加新節(jié)點(diǎn)進(jìn)入網(wǎng)絡(luò)的方法。搭建P2P網(wǎng)絡(luò)P2P網(wǎng)絡(luò)又稱(chēng)對(duì)等網(wǎng)絡(luò)(Peer-to-Peernetworking),或?qū)Φ扔?jì)算(Peer-to-Peercomputing),是一種在對(duì)等節(jié)點(diǎn)(Peer)之間分配任務(wù)和工作負(fù)載的分布式應(yīng)用架構(gòu),是對(duì)等計(jì)算模型在應(yīng)用層層面的一種組網(wǎng)或網(wǎng)絡(luò)形式。P2P網(wǎng)絡(luò)通信搭建P2P網(wǎng)絡(luò)在P2P網(wǎng)絡(luò)環(huán)境中,彼此連接的多臺(tái)計(jì)算機(jī)之間處于對(duì)等的地位,各臺(tái)計(jì)算機(jī)有相同的功能,無(wú)主從之分,一臺(tái)計(jì)算機(jī)既可以作為服務(wù)器,設(shè)定共享資源供網(wǎng)絡(luò)中其他計(jì)算機(jī)使用,又可以作為工作站。網(wǎng)絡(luò)中的參與者能被其他對(duì)等節(jié)點(diǎn)直接訪問(wèn),無(wú)須經(jīng)過(guò)中間實(shí)體,它既是資源、服務(wù)和內(nèi)容的提供者,也可以是資源、服務(wù)和內(nèi)容的獲取者。搭建P2P網(wǎng)絡(luò)奉茶順序整個(gè)網(wǎng)絡(luò)不需要專(zhuān)用的集中服務(wù)器或?qū)S玫墓ぷ髡尽>床瓒Y節(jié)網(wǎng)絡(luò)中的每臺(tái)計(jì)算機(jī)既能充當(dāng)網(wǎng)絡(luò)服務(wù)的請(qǐng)求者,又能對(duì)其他計(jì)算機(jī)的請(qǐng)求做出響應(yīng),提供資源、服務(wù)和內(nèi)容。通常這些資源和服務(wù)包括:信息的共享和交換、計(jì)算資源(如CPU計(jì)算能力共享)、存儲(chǔ)共享(如緩存和磁盤(pán)空間的使用)、網(wǎng)絡(luò)共享、打印機(jī)共享等。“”搭建P2P網(wǎng)絡(luò)在區(qū)塊鏈技術(shù)中由于采用了去中心化的理論,數(shù)據(jù)均以點(diǎn)對(duì)點(diǎn)的通信方式實(shí)現(xiàn),因此P2P通信技術(shù)在節(jié)點(diǎn)通信中應(yīng)用極其廣泛。搭建P2P網(wǎng)絡(luò)FISCOBCOS的網(wǎng)絡(luò)傳輸協(xié)議基于P2P網(wǎng)絡(luò)通信的原理,F(xiàn)ISCOBCOS針對(duì)自身區(qū)塊鏈業(yè)務(wù)設(shè)計(jì)了個(gè)性化的網(wǎng)絡(luò)傳輸協(xié)議。在FISCOBCOS網(wǎng)絡(luò)傳輸協(xié)議中包含了兩類(lèi)數(shù)據(jù)包格式,分別為:(1)P2PMessage格式:用于實(shí)現(xiàn)節(jié)點(diǎn)與節(jié)點(diǎn)之間的通信。搭建P2P網(wǎng)絡(luò)(2)ChannelMessage格式:用于實(shí)現(xiàn)節(jié)點(diǎn)與客戶(hù)端通過(guò)SDK的方式通信。如圖6-11所示為FISCOBCOS網(wǎng)絡(luò)傳輸協(xié)議的實(shí)現(xiàn)形式。搭建P2P網(wǎng)絡(luò)P2PMessage作為區(qū)塊鏈網(wǎng)絡(luò)節(jié)點(diǎn)間進(jìn)行數(shù)據(jù)傳輸?shù)膮f(xié)議,從2.0開(kāi)始擴(kuò)展了群組ID和模塊ID的范圍,最多支持32767個(gè)群組,且新增了Version字段來(lái)支持其他特性(如網(wǎng)絡(luò)壓縮),包頭大小為16字節(jié),其數(shù)據(jù)包的結(jié)構(gòu)如圖6-12所示。搭建P2P網(wǎng)絡(luò)表6-4為P2PMessage數(shù)據(jù)包內(nèi)容的描述。搭建P2P網(wǎng)絡(luò)我們可以通過(guò)在FISCOBCOS節(jié)點(diǎn)的配置文件中對(duì)節(jié)點(diǎn)的通信進(jìn)行配置。根據(jù)之前學(xué)習(xí)的內(nèi)容,我們已經(jīng)部署了FISCOBCOS的測(cè)試區(qū)塊鏈網(wǎng)絡(luò),在網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)都有其對(duì)應(yīng)的配置文件,包括主配置config.ini和多個(gè)賬本配置group.group_id.genesis、group.groupid.ini,不同配置文件描述如下。FISCOBCOS節(jié)點(diǎn)的通信設(shè)置搭建P2P網(wǎng)絡(luò)config.ini主配置文件,主要配置RPC、P2P、SSL證書(shū)、賬本配置文件路徑、兼容性等信息。group.group_id.genesis群組配置文件,群組內(nèi)所有節(jié)點(diǎn)一致,節(jié)點(diǎn)啟動(dòng)后,不可手動(dòng)更改該配置,主要包括群組共識(shí)算法、存儲(chǔ)類(lèi)型、最大Gas限制等配置項(xiàng)。group.group_id.ini群組可變配置文件,包括交易池大小等,配置后重啟節(jié)點(diǎn)生效?!?/p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 物探技能考試試題及答案
- 防災(zāi)減災(zāi)救災(zāi)答題知識(shí)競(jìng)賽附答案
- 2026年中藥學(xué)類(lèi)之中藥學(xué)(士)題庫(kù)與答案
- 口腔執(zhí)業(yè)醫(yī)師練習(xí)題及答案
- 基礎(chǔ)護(hù)理期末考試題及答案
- 中醫(yī)專(zhuān)業(yè)測(cè)試題及答案
- 民勤縣輔警招聘公安基礎(chǔ)知識(shí)考試題庫(kù)及答案
- 2025行政執(zhí)法人員考試題庫(kù)(附答案)
- 實(shí)時(shí)開(kāi)發(fā)面試題庫(kù)及答案
- 2025年食品安全管理員考試題庫(kù)及參考答案大全
- 明框玻璃幕墻施工方案
- 旅游概論模擬題與答案
- 寵物管理法律法規(guī)課件
- 定額〔2025〕1號(hào)文-關(guān)于發(fā)布2018版電力建設(shè)工程概預(yù)算定額2024年度價(jià)格水平調(diào)整的通知
- 2024年山東省濟(jì)南市3月高三模擬考試生物試題(解析版)
- 教科版九年級(jí)物理上冊(cè)期末測(cè)試卷(1套)
- 高一上學(xué)期期末考試英語(yǔ)試卷及答案兩套(附聽(tīng)力錄音稿)
- 內(nèi)蒙古自治區(qū)通遼市霍林郭勒市2024屆中考語(yǔ)文最后一模試卷含解析
- 復(fù)方蒲公英注射液的藥代動(dòng)力學(xué)研究
- 溝通技巧與情商提升
- 2024屆新疆維吾爾自治區(qū)烏魯木齊市高三上學(xué)期第一次質(zhì)量監(jiān)測(cè)生物試題【含答案解析】
評(píng)論
0/150
提交評(píng)論