• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    一種面向Fabric區(qū)塊鏈應(yīng)用軟件的體系結(jié)構(gòu)演化算法

    2020-12-24 08:01:42趙會群張隆龍
    軟件 2020年7期
    關(guān)鍵詞:區(qū)塊鏈

    趙會群 張隆龍

    摘? 要: 針對聯(lián)盟鏈Fabric中,orderer節(jié)點一旦發(fā)生異常,只能在下一個時間間隔繼續(xù),而當(dāng)前時間間隔浪費的問題,本文對Fabric體系結(jié)構(gòu)進(jìn)行了演化,提出了一種新的思路,使得orderer節(jié)點產(chǎn)生異常后,系統(tǒng)可以在當(dāng)前間隔內(nèi)正常工作,不必等到下一個時間間隔。最后通過實驗對算法在吞吐量、資源利用率等性能指標(biāo)上進(jìn)行了對比分析,表明了Fabric軟件軟件體系結(jié)構(gòu)演化算法的有效性。

    關(guān)鍵詞: 區(qū)塊鏈;Fabric聯(lián)盟鏈;體系結(jié)構(gòu)演化;容錯機制

    中圖分類號: TP311 ???文獻(xiàn)標(biāo)識碼: A??? DOI:10.3969/j.issn.1003-6970.2020.07.001

    本文著錄格式:趙會群,張隆龍. 一種面向Fabric區(qū)塊鏈應(yīng)用軟件的體系結(jié)構(gòu)演化算法[J]. 軟件,2020,41(07):01-10+60

    An Architecture Evolution Algorithm for Fabric Blockchain Application Software

    ZHAO Hui-qun, ZHANG Long-long

    (North China University of Technology, Information Institute, Beijing 100144, China)

    【Abstract】: In order to solve this problem: at the alliance chain Fabric, if the orderer node has an exception, it can only continue at the next time interval and the current time interval is wasted, this paper proposes a new idea to evolve the fabric architecture, so that after the orderer node has an exception, the system can work normally in the current interval without waiting for the next time interval. Finally, the algorithm was compared and analyzed through experiments on performance indicators such as throughput and resource utilization, which showed the effectiveness of the evolutionary algorithm of the Fabric software architecture.

    【Key words】: Blockchain; Fabric alliance chain; Architecture evolution; Fault tolerance mechanism

    0? 引言

    區(qū)塊鏈技術(shù)興起于2008年,化名為“中本聰”(Satoshi nakamoto)的學(xué)者發(fā)表了一篇奠基性論文《Bitcoin: a peer-to-peer electronic cash system》[1],具有去中心化、不可篡改和數(shù)據(jù)本地化存儲等特性。

    區(qū)塊鏈技術(shù)的開源項目有很多,目前使用最廣泛的是超級賬本(Hyperledger)項目[2]。該項目成立于2015年12月,由開源世界的旗艦組織Linux基金會牽頭成立。項目為透明、公開、去中心化的企業(yè)級分布式賬本技術(shù)提供開源參考實現(xiàn),并推動區(qū)塊鏈和分布式賬本相關(guān)協(xié)議、規(guī)范和標(biāo)準(zhǔn)的發(fā)展[3]。其中子項目Fabric最早由IBM和DAH發(fā)起,目標(biāo)是作為區(qū)塊鏈的基礎(chǔ)核心平臺,定位是面向企業(yè)的分布式賬本平臺,創(chuàng)新地引入了權(quán)限管理支持,是首個面向聯(lián)盟鏈場景的開源項目[4]。

    Fabric是一個開源的企業(yè)級許可分布式賬本技術(shù)平臺,相比于傳統(tǒng)的公有鏈,有著更好的性能[5],其最重要的特點就是可插拔性。沒有任何一個區(qū)塊鏈平臺能夠滿足所有需求,但是Fabric 可以通過配置來盡可能的滿足多樣化需求。

    底層由peer節(jié)點和orderer節(jié)點組成了P2P網(wǎng)絡(luò),通過Google開源的RPC框架-gRPC進(jìn)行交互,客戶端把用戶輸入的數(shù)據(jù)構(gòu)建成交易提案,發(fā)送給背書節(jié)點(背書策略指定的peer節(jié)點),背書節(jié)點模擬執(zhí)行交易后,將結(jié)果集返回給客戶端,客戶端根據(jù)結(jié)果集構(gòu)建交易,發(fā)送給orderer節(jié)點,在orderer節(jié)點中,對于收到的交易,進(jìn)行排序,打包生成塊后,返回給peer節(jié)點,peer節(jié)點驗證后,寫入本地帳本,并利用Gossip廣播協(xié)議同步數(shù)據(jù)。

    中間使用通道技術(shù)(channel)進(jìn)行隔離,每個通道都是一個獨立的網(wǎng)絡(luò),擁有自己的賬本(ledger)。賬本的底層是數(shù)據(jù)庫,fabric中采用goleveldb,對賬本的操作,追根溯源,還是對數(shù)據(jù)庫的操作。賬本記載了一系列交易,完成交易依賴于共識算法,交易會觸發(fā)事件。交易是由SDK發(fā)起的,其底層是應(yīng)用鏈碼(Application chaincode,簡稱ACC),除了ACC外,還有系統(tǒng)連碼(System chaincode,簡稱SCC),主要用來管理ACC,不管是ACC還是SCC,都是鏈碼(chaincode),都依賴于容器技術(shù)和狀態(tài)機(finite state machine,有限狀態(tài)機,簡稱FSM)技術(shù)。權(quán)限管理是獨立出來的,使用了PKI體系,由CA(Certificate Authority,即頒發(fā)數(shù)字證書的機構(gòu))節(jié)點負(fù)責(zé)頒發(fā)證書,底層是fabric封裝好的MSP(Membership Service Provider)服務(wù)。

    Fabric向上層應(yīng)用提供了gRPC API以及把API進(jìn)行封裝的SDK, 應(yīng)用可以通過SDK訪問賬本、處理交易、管理鏈碼、注冊事件、管理權(quán)限等多種資源。SDK的實現(xiàn)有多種,目前支持最完整的版本是Java和nodejs。整個框架的核心就是賬本,負(fù)責(zé)記錄框架上所有應(yīng)用的信息,而應(yīng)用通過SDK發(fā)起交易來向賬本記錄數(shù)據(jù),交易執(zhí)行的邏輯通過ACC來承載。

    Fabric中的orderer節(jié)點負(fù)責(zé)對交易排序、打包成塊,依照共識算法在一個時間間隔內(nèi),選擇一個節(jié)點完成,該節(jié)點稱之為主節(jié)點,當(dāng)主節(jié)點因為異常停掉時,整個網(wǎng)絡(luò)就會停滯,節(jié)點之間會一直詢問,阻塞,直到該間隔結(jié)束,下一個間隔重新選擇主節(jié)點。當(dāng)網(wǎng)絡(luò)初步啟動,節(jié)點和交易較少時,F(xiàn)abric網(wǎng)絡(luò)處理迅速,選舉間隔極短,但是,當(dāng)節(jié)點數(shù)目和交易次數(shù)很多時,網(wǎng)絡(luò)處理變得緩慢,選舉間隔增加,每一次的阻塞時間都是很大的浪費。orderer節(jié)點選舉的主節(jié)點遭受異常壞掉,造成該間隔內(nèi)整個系統(tǒng)阻塞的問題,屬于容錯問題,F(xiàn)abric系統(tǒng)需要有一個支持主節(jié)點容錯的機制。

    故本文在Fabric的基礎(chǔ)上,針對現(xiàn)階段系統(tǒng)不支持主節(jié)點容錯的問題,對Fabric系統(tǒng)架構(gòu)進(jìn)行演化,提出了一個支持主節(jié)點容錯的演化算法。

    本文研究部分分為四部分:第一部分是引言,第二部分是相關(guān)工作;第三部分是算法設(shè)計;第四部分是實驗分析;第五部分是總結(jié)。

    1 ?相關(guān)工作

    中本聰?shù)牡旎哉撐?sup>[1]中,指出了區(qū)塊鏈的典型結(jié)構(gòu),對關(guān)鍵術(shù)語交易、時間戳服務(wù)器、工作量證明、網(wǎng)絡(luò)、激勵、回收硬盤空間、簡化的支付確認(rèn)、價值的組合與分割、隱私進(jìn)行了詳細(xì)敘述,最后進(jìn)行計算,驗證了區(qū)塊鏈網(wǎng)絡(luò)的可行性。在這個設(shè)計中,巧妙地將節(jié)點容錯能力轉(zhuǎn)化為對于系統(tǒng)中算力的掌握程度,只要掌握的算力不超過系統(tǒng)總算力的50%,就不會系統(tǒng)造成影響。實質(zhì)上是依賴于共識算法-Pow算法,但是該算法耗費資源極高,節(jié)點是否異常需要有6個區(qū)塊上鏈才能確定,時間間隔長,不適用于一般系統(tǒng)[6-7]。

    袁勇、王飛躍[8]以比特幣為例,說明了區(qū)塊鏈的基礎(chǔ)架構(gòu)模型,由數(shù)據(jù)層、網(wǎng)絡(luò)層、共識層、激勵層、合約層和應(yīng)用層組成:

    數(shù)據(jù)層:封裝了底層數(shù)據(jù)區(qū)塊以及相關(guān)的數(shù)據(jù)加密和時間戳等技術(shù);

    網(wǎng)絡(luò)層:包括分布式組網(wǎng)機制、數(shù)據(jù)傳播機制和數(shù)據(jù)驗證機制等;

    共識層:主要封裝網(wǎng)絡(luò)節(jié)點的各類共識算法;

    激勵層:將經(jīng)濟(jì)因素集成到區(qū)塊鏈技術(shù)體系中來,主要包括經(jīng)濟(jì)激勵的發(fā)行機制和分配機制等;

    合約層:主要封裝各類腳本、算法和智能合約,是區(qū)塊鏈可編程特性的基礎(chǔ);

    應(yīng)用層:封裝了區(qū)塊鏈的各種應(yīng)用場景和? 案例。

    邵奇峰、金澈清等[9]結(jié)合了比特幣、以太坊、fabric等區(qū)塊鏈平臺,提出了另外一種相似但更為簡潔的區(qū)塊鏈架構(gòu)模型,整體上可劃分為網(wǎng)絡(luò)層、共識層、數(shù)據(jù)層、智能合約層和應(yīng)用層五個層次,其中不同之處在于數(shù)據(jù)層,這種結(jié)構(gòu)中的數(shù)據(jù)層包括數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)模型和區(qū)塊存儲,激勵層并入共識層中。在論述區(qū)塊鏈劣勢時,提及了區(qū)塊鏈吞吐量、事務(wù)和并發(fā)處理、查詢統(tǒng)計、訪問控制以及可擴展性問題,沒有提及容錯方面。

    徐曉冰、戚梟宏等[10]把區(qū)塊鏈技術(shù)應(yīng)用到物聯(lián)網(wǎng)上,部署智能合約為設(shè)備管理操作提供接口,把物聯(lián)網(wǎng)設(shè)備獨立于區(qū)塊鏈網(wǎng)絡(luò)之外,進(jìn)而實現(xiàn)網(wǎng)絡(luò)的可伸縮性。后續(xù)之中還改進(jìn)了PBFT算法,使之更有效率地替換拜占庭節(jié)點,實驗驗證了其有效性,但是容錯功能依然是作為共識算法的一部分,沒有改進(jìn)。

    甘俊、李強等[11]針對拜占庭容錯共識算法的靜態(tài)網(wǎng)絡(luò)結(jié)構(gòu)和主節(jié)點選取隨意,通信開銷較大的問題,進(jìn)行改進(jìn),使節(jié)點可以動態(tài)地加入或退出,并且以最長鏈為選舉原則進(jìn)行選舉,對選舉出來的節(jié)點增加了可信度和吞吐量,降低了時延,提高了安全性。該算法檢測出節(jié)點異常后,迅速結(jié)束當(dāng)前周期,開啟新一輪選舉,降低了節(jié)點切換時間,但是沒有支持主節(jié)點容錯功能。

    蔡維德、郁蓮等[12]詳述了北航鏈,提出了賬戶區(qū)塊鏈模型和交易區(qū)塊鏈模型,滿足通信量巨大、快速響應(yīng)、賬戶信息隱私等需要,并且可擴展性高,但是這個鏈的重點在于提高建塊速度、并行計算、節(jié)省算力方面,強調(diào)區(qū)塊鏈應(yīng)用系統(tǒng)的開發(fā),沒有關(guān)注主節(jié)點容錯。

    朱立、俞歡等[13]提出了新的高性能聯(lián)盟區(qū)塊鏈技術(shù),通過業(yè)務(wù)邏輯與共識分離、存儲優(yōu)化和數(shù)字簽名驗證優(yōu)化等手段來提高聯(lián)盟鏈系統(tǒng)的交易性能,并且驗證了有效性。在此架構(gòu)之中共識算法分離了出來,但是依然沒有擺脫容錯功能,整個系統(tǒng)還是依賴于共識算法進(jìn)行處理。

    Sara Saberi、Mahtab Kouhizadeh等[14]將區(qū)塊鏈技術(shù)用于解決一些全球供應(yīng)鏈管理的問題。全球的供應(yīng)鏈系統(tǒng)和區(qū)塊鏈系統(tǒng)在結(jié)構(gòu)上具有相似之處,都是分布式,現(xiàn)在的供應(yīng)鏈管理嚴(yán)重依賴一些大型組織,具有集中式的特點。文章中提出把區(qū)塊鏈技術(shù)應(yīng)用在供應(yīng)鏈管理中,使得供應(yīng)鏈不在集中于某幾個組織,具有更好的健壯性。文章指出在基礎(chǔ)的區(qū)塊鏈系統(tǒng)之上,更好的管理還得依靠智能合約,通過對其的嚴(yán)格審查,來確保安全。

    關(guān)于區(qū)塊鏈的研究較少,大部分重點在于區(qū)塊鏈結(jié)構(gòu),把支持主節(jié)點容錯放在了共識算法中,少部分對共識算法進(jìn)行了改進(jìn)。本文提出的支持主節(jié)點容錯的orderer節(jié)點演化算法獨立于共識模塊,當(dāng)主節(jié)點異常時,在當(dāng)前周期內(nèi)直接支持容錯,保證系統(tǒng)正常工作。

    2 ?算法研究

    2.1 ?需求分析

    在Fabric系統(tǒng)結(jié)構(gòu)中,數(shù)據(jù)傳輸過程如圖2。

    (1)客戶端根據(jù)用戶輸入的數(shù)據(jù)、需要調(diào)用的chaincode函數(shù)和參數(shù)、時間戳和客戶端的簽名等信息,構(gòu)建交易提案,依據(jù)設(shè)定好的背書策略發(fā)送給指定的Endorser節(jié)點;

    (2)Endorser節(jié)點收到提案后,首先校驗簽名,保證合法性,然后進(jìn)行背書操作,即根據(jù)提案中的信息,基于當(dāng)前賬本狀態(tài),調(diào)用chaincode函數(shù)模擬執(zhí)行交易,生成結(jié)果并簽名,發(fā)送給客戶端。注意,此時只是模擬執(zhí)行,并沒有更改當(dāng)前的賬本狀態(tài);

    (3)客戶端收到回復(fù)后,驗證結(jié)果的簽名是否屬于給定的背書節(jié)點,保證合法性。然后,對模擬執(zhí)行的結(jié)果進(jìn)行校驗,若有多個回復(fù)信息,檢查是否一致。檢查通過后,對背書結(jié)果進(jìn)行簽名,生成交易(transaction),發(fā)送給主orderer節(jié)點;

    (4)主orderer節(jié)點是orderer節(jié)點列表依照Raft共識選舉出來的,在收到客戶端發(fā)送的交易后,首先會校驗簽名,保證合法性,然后對交易按照指定規(guī)則排序,并且打包生成塊,然后對生成的區(qū)塊簽名,之后發(fā)送給peer節(jié)點;

    (5)peer節(jié)點中的Leader角色,負(fù)責(zé)與orderer節(jié)點通信,在收到區(qū)塊后,會廣播給組織內(nèi)其余的peer節(jié)點,也就是Commit節(jié)點,在驗證通過后,會真正的執(zhí)行交易,更新本地的數(shù)據(jù)庫。

    由上述過程中,可看出,主orderer節(jié)點在起到了至關(guān)重要的作用,需要對主orderer節(jié)點進(jìn)行容錯處理,但是在fabric系統(tǒng)中沒有,因此對fabric系統(tǒng)中orderer節(jié)點的結(jié)構(gòu)進(jìn)行演化,確保在主orderer節(jié)點產(chǎn)生異常的情況下,系統(tǒng)仍然可以正常工作。

    相比于圖3,把orderer節(jié)點分為兩部分,新拿出的一部分作為備份orderer節(jié)點列表,時刻進(jìn)行維護(hù),按順序選取第一個節(jié)點作為備份orderer節(jié)點,時刻備份著主orderer節(jié)點的數(shù)據(jù)。當(dāng)主orderer節(jié)

    點異常時,備份orderer節(jié)點可以立即接管主orderer節(jié)點的業(yè)務(wù),維護(hù)系統(tǒng)的正常運行。

    2.2 ?演化模型

    在原來的Fabric結(jié)構(gòu)中,orderer節(jié)點與peer節(jié)點關(guān)系如下(假設(shè)此時主orderer節(jié)點已經(jīng)收到客戶端發(fā)來的交易信息,為了簡潔,用戶、客戶端、背書節(jié)點和提交節(jié)點略去):

    主orderer節(jié)點收到客戶端發(fā)來的交易,對交易進(jìn)行校驗、排序,然后按照一定規(guī)則打包成塊,發(fā)送給leader peer節(jié)點。此時的系統(tǒng)架構(gòu)上,不具備容錯能力。

    依照前面分析,在圖3-2的基礎(chǔ)上,添加了備份orderer節(jié)點來完成容錯。備份orderer節(jié)點需要知道主orderer的狀態(tài),來及時的進(jìn)行接管服務(wù)。本文參照觀察者模式[15],完成消息傳遞機制。

    將主orderer節(jié)點作為被觀察者,備份orderer節(jié)點和leader peer節(jié)點作為觀察者,主orderer節(jié)點通過attach方法和detach方法來注冊、刪除具體觀察者,具體觀察者對象存儲在主orderer節(jié)點的concreteObservers字段中。主orderer節(jié)點就可以調(diào)用繼承的notify方法,在此方法中通過存儲的觀察者對象來調(diào)用它們自身的update方法,繼而完成對觀察者的通知。同時,主orderer節(jié)點需要把區(qū)塊發(fā)送給leader peer節(jié)點,也可以通過此機制來完成,使得兩者之間的耦合性降低。

    備份orderer節(jié)點收到主orderer節(jié)點異常信息后,會啟動接管服務(wù),利用備份好的數(shù)據(jù),恢復(fù)主orderer節(jié)點的服務(wù),去除Observer接口的方法,新添加Subject接口的方法,此時原來的備份orderer節(jié)點就變成了新的主orderer節(jié)點,在當(dāng)前的時間間隔內(nèi)繼續(xù)工作;原來的主orderer節(jié)點會進(jìn)入檢測列表中,檢測正常,就會進(jìn)入備份orderer節(jié)點列表;此時備份orderer節(jié)點列表中的第一個orderer節(jié)點,會自動成為新的備份orderer節(jié)點。

    2.3 ?算法設(shè)計

    在調(diào)整后的結(jié)構(gòu)中,相對于被觀察者leader peer節(jié)點和備份orderer節(jié)點來說,其收到的消息是主orderer節(jié)點推送過來的,是被動接受的。這一般適用于主orderer節(jié)點在工作過程中陷入阻塞狀態(tài),阻塞時間大于waitTime(等待時間)時,來通知備份orderer節(jié)點和leader peer節(jié)點。

    算法1:異常感知算法(被動)

    輸入:backupIP——備份orderer節(jié)點的IP地址

    輸出:異常狀態(tài)信息

    主orderer節(jié)點端:

    1. backupOrderer=getOrderer(backupIP)? // 得到備份orderer節(jié)點對象

    2. attach(backupOrderer)????????? // 注冊觀察者,存入觀察者列表中

    3. IF 進(jìn)入阻塞狀態(tài) && 阻塞時間 > waitTime THEN

    4. ??notify(異常狀態(tài)信息)??? // 通知觀察者

    5. END

    備份orderer節(jié)點端:

    1. exceptionInfo=update()????????????????? // 主orderer節(jié)點端的notify方法,本質(zhì)上就是調(diào)用觀察者自身的update方法進(jìn)行通知

    2. print(exceptionInfo)

    leader peer節(jié)點端:

    1. exceptionInfo=update()

    2. print(exceptionInfo)

    觀察者模式是典型的被動感知,有其局限性,當(dāng)主orderer節(jié)點斷網(wǎng)時,就無法向觀察者備份orderer節(jié)點和leader peer節(jié)點推送消息,即備份orderer節(jié)點無法被動感知。此時就需要備份orderer節(jié)點主動感知主orderer節(jié)點異常的算法。

    算法2:異常感知算法(主動)

    輸入:主orderer節(jié)點的IP地址

    輸出:主orderer節(jié)點異常信息

    主orderer端:

    1. 讀取本地IP,監(jiān)聽本地端口

    2. WHILE

    3.??? IF 收到連接請求 THEN

    4.??????? 建立連接

    5.??????? Send(狀態(tài)信息)

    6.??? END

    備份orderer端和leader peer節(jié)點端:

    1. 讀取主orderer的IP地址

    2. WHILE

    3.??? 向主orderer節(jié)點發(fā)送連接請求

    4.??? IF 連接成功 THEN

    5.??????? Receive(狀態(tài)信息)

    6.??? ELSE

    7.??????? print(主orderer節(jié)點異常)

    8.??? END

    9.??? sleep(intervalTime)

    假設(shè)此時主orderer節(jié)點產(chǎn)生異常,已經(jīng)無法正常工作,備份orderer節(jié)點已收到異常信息,準(zhǔn)備接管其業(yè)務(wù)。

    圖7是用一個正常工作的狀態(tài),此時主orderer節(jié)點產(chǎn)生異常,備份orderer節(jié)點通過算法1被動感知或者算法2主動感知,得到其無法正常工作的消息,就會啟動自身的數(shù)據(jù)恢復(fù)服務(wù)和接管服務(wù),代替主orderer節(jié)點工作,同時從備份orderer節(jié)點列表中,取出首位的備份orderer節(jié)點,進(jìn)行數(shù)據(jù)備份服務(wù)。

    算法3:orderer節(jié)點演化算法

    輸入狀態(tài):主orderer節(jié)點異常,無法工作

    輸出狀態(tài):備份orderer節(jié)點接管主orderer節(jié)點業(yè)務(wù),正常工作

    備份orderer端:

    1. data=updateData()?????? // 把數(shù)據(jù)從本地備份中恢復(fù)

    2. Tx=receiveTx(data[sender]) // 通過備份的交易發(fā)送方,啟動接收交易服務(wù),接受新的交易

    3. getService(data[Tx]/Tx)??????? // 對備份中的交易和收到的新交易進(jìn)行排序,打包成塊

    4. sendBlock(data[receiver])???? // 通過備份的區(qū)塊接收方,啟動發(fā)送區(qū)塊服務(wù),把生成的區(qū)塊發(fā)送給指定的接收方

    5. 監(jiān)聽本地端口

    6. WHILE

    7. ??? IF 收到連接請求 THEN

    8. ???????????? 建立連接

    9.?????????????? Receive(新的備份orderer節(jié)點已經(jīng)準(zhǔn)備好)

    10.???????????? attach(新的備份orderer節(jié)點)??????? // 注冊新的觀察者,必須確保新的備份orderer節(jié)點已經(jīng)準(zhǔn)備好

    11. ?????????? WHILE

    12.????????????????????? sendData(data)???????? // 循環(huán)發(fā)送數(shù)據(jù),以便備份

    13. ?????????? END? // 若產(chǎn)生異常,跳出循環(huán)

    14.??? END

    在備份orderer節(jié)點列表中,選擇當(dāng)前第一個節(jié)點,成為新的備份orderer節(jié)點。

    新的備份orderer節(jié)點端:

    1. 向現(xiàn)在的主orderer節(jié)點(原備份orderer節(jié)點)發(fā)送請求

    2. IF 建立連接 THEN

    3.????? Send(備份節(jié)點已經(jīng)就緒)

    4.????? WHILE

    5. ???????????? data=Receice(data)? // 循環(huán)接收當(dāng)前主orderer節(jié)點發(fā)來的數(shù)據(jù)

    6.? ?????????? saveData(data)???????? ??? // 保存

    7.?? ??????? END ??????? // 若產(chǎn)生異常,跳出循環(huán)

    8. END

    備份節(jié)點接管之后,原來的主orderer節(jié)點有可能恢復(fù)正常,不能直接廢棄,此時備份orderer作為主orderer,要測試原來的orderer信息,如果正常,就放入后備orderer列表,等待使用。

    算法4:orderer節(jié)點管理算法

    輸入:主orderer的IP地址

    輸出:備份orderer節(jié)點列表

    主orderer端:

    1. 監(jiān)聽本地端口

    2. WHILE

    3.??? IF 收到連接請求 THEN

    4.??????? 建立連接

    5.??????? Send(狀態(tài)信息)

    6.??? END

    備份orderer端:

    1. 讀取主orderer的IP地址

    2. WHILE

    3.??? 向主orderer發(fā)送連接請求

    4.??? IF 建立連接 THEN

    5.??????? Receive(狀態(tài)信息)

    6.?????? ?IF 狀態(tài)良好 THEN

    7.??????????? backupOrderers.add(主orderer節(jié)點)

    8.??????? END

    9.??? END

    10.? ?IF 共識節(jié)點數(shù)量<3 THEN // 共識算法至少得需要3個節(jié)點

    11. ??????????????????? orderer= backupOrderers.remove()

    12. ??????????????????? normalOrderers.add(orderer)

    13.? ??????? END

    14.???? sleep(intervalTime)

    3 ?實驗分析

    3.1 ?實驗數(shù)據(jù)

    本實驗所用到的數(shù)據(jù)是英特集團(tuán)的2018年和2019年的交易數(shù)據(jù),股票代碼:000411,數(shù)據(jù)來自于網(wǎng)易財經(jīng)。

    在2018年和2019年中,共有488天進(jìn)行過股票交易。實驗中,建立兩個賬戶,一個是英特集團(tuán)賬戶,初始金額為2018/1/2的流通市值,即418226.9萬元,另一個賬戶代表股民,初始金額設(shè)定為10000萬元,每次進(jìn)行兩筆交易,分別代表資金流入和資金流出,執(zhí)行488次,代表488天的交易,合計976筆交易。

    3.2 ?實驗環(huán)境

    實驗基于官方測試樣例fabric-samples/first- network,對其進(jìn)行了修改,由5個orderer節(jié)點和3個peer節(jié)點構(gòu)成,5個orderer節(jié)點中,其中3個orderer節(jié)點要通過Raft共識進(jìn)行選舉,2個orderer節(jié)點作為備份orderer節(jié)點列表;3個peer節(jié)點中,指定peer0擔(dān)任leader角色,負(fù)責(zé)與orderer組織通信,3個peer節(jié)點都擔(dān)任Endorser角色和Commit角色,負(fù)責(zé)背書和寫入?yún)^(qū)塊。

    3.3 ?實驗分析

    仿造主orderer節(jié)點陷入阻塞狀態(tài),備份orderer節(jié)點被動感知異常的情況下,對應(yīng)用演化算法前? 后系統(tǒng)的業(yè)務(wù)吞吐量、資源利用率和延遲,進(jìn)行了分析。

    3.3.1? 業(yè)務(wù)吞吐量

    在吞吐量方面,fabric中對于讀和寫的處理效率是不同的,讀的效率要高于寫的效率,因此對讀寫分開進(jìn)行測試。

    由圖10可看出,隨著吞吐量的增加,讀操作和寫操作都出現(xiàn)了失敗案例,這是fabric本身的性能瓶頸。讀操作的TPS在500左右,寫操作的TPS在300左右,在這兩個界限之下,可保證交易的有效性。

    相比于演化前的吞吐量,演化后的系統(tǒng)在讀操作上的TPS提高到520上下,寫操作的TPS提高到310上下。整體上,在吞吐量指標(biāo)上,有了3%-4%的提升。

    3.3.2? 資源利用率

    通過自動化腳本對應(yīng)用演化算法前后的數(shù)據(jù)進(jìn)行采集,主要采集CPU和硬盤的使用數(shù)據(jù),其中讀寫操作的比例是2∶1,CPU采用百分比,硬盤采用萬分比,結(jié)果如圖12。

    由圖中可看出,在CPU的利用率上,當(dāng)交易次數(shù)較少時,采用演化算法的系統(tǒng)使用的CPU資源要少一些,隨著交易次數(shù)的增加,無論是否采用演化算法,CPU的利用率都會達(dá)到100%,陷入瓶頸;在硬盤的利用率上,采用演化算法的系統(tǒng)比原系統(tǒng)使用的硬盤資源少,而且隨著交易數(shù)量的增加,會越來越明顯。

    3.3.3? 延遲

    在fabric系統(tǒng)中,主orderer節(jié)點作用是對收到的交易進(jìn)行排序、打包,當(dāng)收到的交易數(shù)量大于主orderer節(jié)點的處理能力時,多余的交易會進(jìn)行排隊等待,繼而會造成延遲。實驗測量交易的平均等待時間,結(jié)果如圖13。

    由圖中可看出,隨著交易次數(shù)的增加,平均每個交易的延遲會顯著降低,說明了演化算法中,orderer節(jié)點替換的時間要小于Raft共識重新選舉的時間。

    3.4.4? 小結(jié)

    應(yīng)用演化算法的fabric系統(tǒng),最主要的突破是降低了延遲。采用備份orderer節(jié)點接管主orderer節(jié)點的業(yè)務(wù),是有效的,其花費的時間開銷小于共識算法重新選舉的時間開銷。

    延遲降低后,單位時間內(nèi)的交易吞吐量就會提高,但是本質(zhì)上吞吐量取決于fabric系統(tǒng)內(nèi)部的運算復(fù)雜度,交易的等待時間并不是決定性因素,因此系統(tǒng)吞吐量提高的幅度不大。

    共識算法的選舉過程,需要進(jìn)行安全校驗,即加解密操作,需要CPU運算;而orderer節(jié)點演化算法要求備份orderer節(jié)點恢復(fù)交易數(shù)據(jù),對交易排序、打包,需要磁盤讀寫,因此,當(dāng)交易次數(shù)少的時候,應(yīng)用演化算法的系統(tǒng)需要的CPU資源就會降低。隨著交易次數(shù)的增加,限于硬件環(huán)境,CPU資源耗盡,進(jìn)入瓶頸。

    對于硬盤資源,延遲的降低,使得等待處理的交易減少,進(jìn)而降低了這部分交易的存儲,同時也減少了日志信息。

    4 ?結(jié)論

    本文通過對fabric架構(gòu)中的orderer節(jié)點進(jìn)行演化,把orderer節(jié)點分出一部分,作為備份orderer節(jié)點,解決了主orderer節(jié)點異常問題。實驗表明,該算法能有效地降低延遲,進(jìn)而提高fabric的運行效率。

    參考文獻(xiàn)

    1. Satoshi Nakamoto. Bitcoin: a peer-to-peer electronic cash system[OL], available: https://bitcoin.org/bitcoin.pdf, 2008.
    2. Hyperledger Chinese document[OL]. https://hyperledgercn. github.io/hyperledgerDocs.
    3. 楊保華, 陳昌. 區(qū)塊鏈原理、設(shè)計與應(yīng)用[M]. 北京: 機械工業(yè)出版社, 2017. 8.
    1. 張增駿, 董寧, 朱軒彤, 等. 深度探索區(qū)塊鏈: Hyperledger技術(shù)與應(yīng)用[M]. 北京: 機械工業(yè)出版社, 2018. 1.
    2. 朱立, 俞歡, 詹士瀟, 等. 高性能聯(lián)盟區(qū)塊鏈技術(shù)研究[J]. 軟件學(xué)報, 2019, 30(6): 1577-1593.
    3. 葉聰聰, 李國強, 蔡鴻明, 等. 區(qū)塊鏈的安全檢測模型[J]. 軟件學(xué)報, 2018, 29(05): 1348-1359.
    4. Mauro C, Kumar E S, Chhagan L, et al. A Survey on Security and Privacy Issues of Bitcoin[J]. IEEE Communications Surveys & Tutorials, 2018: 1-1.
    5. 袁勇, 王飛躍. 區(qū)塊鏈技術(shù)發(fā)展現(xiàn)狀與展望[J]. 自動化學(xué)報, 2016, 42(4): 481?494.
    6. 邵奇峰, 金澈清, 張召等. 區(qū)塊鏈技術(shù):架構(gòu)及進(jìn)展[J]. 計算機學(xué)報. 2018(5), 5(41): 969-988.
    7. 徐曉冰, 戚梟宏, 王建平, 等. 基于區(qū)塊鏈的物聯(lián)網(wǎng)可伸縮管理機制[J]. 計算機應(yīng)用研究. 2019(6).
    8. 甘俊, 李強, 陳子豪, 等. 區(qū)塊鏈實用拜占庭容錯共識算法的改進(jìn)[J]. 計算機應(yīng)用, 2019, 39(07): 2148-2155.
    9. 蔡維德, 郁蓮, 王榮, 等. 基于區(qū)塊鏈的應(yīng)用系統(tǒng)開發(fā)方法研究[J]. 軟件學(xué)報, 2017, 28(6): 1474-1487.
    10. 朱立, 俞歡, 詹士瀟, 等. 高性能聯(lián)盟區(qū)塊鏈技術(shù)研究[J]. 軟件學(xué)報, 2019, 30(6): 1577-1593.
    11. Sara Saberi, Mahtab Kouhizadeh, Joseph Sarkis & Lejia Shen. Blockchain technology and its relationships to sustainable supply chain management[J], International Journal of Production Research, 2019.
    12. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. 設(shè)計模式: 可復(fù)用面向?qū)ο筌浖幕A(chǔ)[M]. 李英軍, 馬曉星, 蔡敏等譯. 北京: 機械工業(yè)出版社, 2007. 1.

    猜你喜歡
    區(qū)塊鏈
    區(qū)塊鏈對互聯(lián)網(wǎng)金融發(fā)展的重塑與挑戰(zhàn)分析
    基于區(qū)塊鏈技術(shù)的海上散裝液體化學(xué)品運輸安全監(jiān)管方法
    水運管理(2016年11期)2017-01-07 13:25:48
    保險企業(yè)的區(qū)塊鏈技術(shù)應(yīng)用方向選擇研究
    區(qū)塊鏈技術(shù)在金融領(lǐng)域的應(yīng)用與前景研究
    中國市場(2016年32期)2016-12-06 11:21:13
    區(qū)塊鏈技術(shù)的應(yīng)用價值分析
    商情(2016年40期)2016-11-28 11:24:12
    “區(qū)塊鏈”發(fā)展現(xiàn)狀評述及展望
    商(2016年34期)2016-11-24 14:46:00
    “區(qū)塊鏈”的茍且、詩和遠(yuǎn)方
    基于區(qū)塊鏈技術(shù)的數(shù)字貨幣與傳統(tǒng)貨幣辨析
    互聯(lián)網(wǎng)金融新模式與中小企業(yè)融資關(guān)系研究
    智能合約與金融合約
    商(2016年6期)2016-04-20 17:50:36
    亚洲成人免费电影在线观看| 美女高潮到喷水免费观看| 亚洲久久久国产精品| 亚洲精品国产精品久久久不卡| 欧美老熟妇乱子伦牲交| 国产精品香港三级国产av潘金莲| 国产成人系列免费观看| 欧美 亚洲 国产 日韩一| 法律面前人人平等表现在哪些方面| 免费女性裸体啪啪无遮挡网站| 成在线人永久免费视频| 成年人免费黄色播放视频| av欧美777| 国产不卡一卡二| 久久国产精品男人的天堂亚洲| 国产深夜福利视频在线观看| 亚洲熟妇中文字幕五十中出 | 一级片免费观看大全| 久久久久久亚洲精品国产蜜桃av| 王馨瑶露胸无遮挡在线观看| 国产男靠女视频免费网站| 国产精品九九99| 中文欧美无线码| 正在播放国产对白刺激| 建设人人有责人人尽责人人享有的| 亚洲精品久久成人aⅴ小说| 中文字幕人妻丝袜制服| 精品欧美一区二区三区在线| 曰老女人黄片| 91麻豆精品激情在线观看国产 | 国产男女内射视频| 国产精品1区2区在线观看. | 十分钟在线观看高清视频www| 亚洲av片天天在线观看| 国产精品综合久久久久久久免费 | 在线观看免费视频日本深夜| 少妇被粗大的猛进出69影院| 欧美亚洲 丝袜 人妻 在线| 日韩欧美在线二视频 | 后天国语完整版免费观看| 国内久久婷婷六月综合欲色啪| 久久久久国产精品人妻aⅴ院 | 久久午夜综合久久蜜桃| 亚洲精品一卡2卡三卡4卡5卡| 精品亚洲成国产av| 亚洲性夜色夜夜综合| 三级毛片av免费| 丁香六月欧美| 涩涩av久久男人的天堂| 大型av网站在线播放| 久久久久视频综合| 水蜜桃什么品种好| 国产精品二区激情视频| 亚洲熟女精品中文字幕| 久久 成人 亚洲| 欧美 日韩 精品 国产| 国产欧美日韩精品亚洲av| 亚洲色图 男人天堂 中文字幕| 9色porny在线观看| ponron亚洲| avwww免费| 中文亚洲av片在线观看爽 | 操出白浆在线播放| 在线观看午夜福利视频| 亚洲男人天堂网一区| 久久中文看片网| 亚洲av美国av| 中文字幕人妻丝袜一区二区| 日本黄色日本黄色录像| 在线天堂中文资源库| 国产欧美日韩精品亚洲av| 在线天堂中文资源库| 91成年电影在线观看| 久久天躁狠狠躁夜夜2o2o| www.精华液| 下体分泌物呈黄色| 午夜免费观看网址| 99久久国产精品久久久| 午夜日韩欧美国产| 天天影视国产精品| 国产色视频综合| 人人妻人人添人人爽欧美一区卜| 久久国产精品影院| 欧美激情 高清一区二区三区| 国产精品偷伦视频观看了| 国产日韩一区二区三区精品不卡| 久久人人97超碰香蕉20202| 啦啦啦 在线观看视频| 国产成人av教育| 搡老熟女国产l中国老女人| 国产男靠女视频免费网站| 欧美日韩乱码在线| 伦理电影免费视频| 91字幕亚洲| 91成年电影在线观看| 亚洲免费av在线视频| 久久精品亚洲熟妇少妇任你| 18禁国产床啪视频网站| 国产成人av教育| 搡老熟女国产l中国老女人| 国产精品久久久av美女十八| a级毛片在线看网站| 国产高清国产精品国产三级| 国产高清视频在线播放一区| 免费观看人在逋| 精品欧美一区二区三区在线| 激情视频va一区二区三区| 亚洲精品美女久久av网站| 欧美日韩一级在线毛片| 黑人操中国人逼视频| 在线视频色国产色| 电影成人av| www.熟女人妻精品国产| ponron亚洲| 极品教师在线免费播放| 亚洲国产中文字幕在线视频| 婷婷成人精品国产| 天天添夜夜摸| 精品久久蜜臀av无| 一区二区三区激情视频| 久久人妻福利社区极品人妻图片| 国产aⅴ精品一区二区三区波| 精品一区二区三区视频在线观看免费 | 欧美性长视频在线观看| 在线免费观看的www视频| 制服诱惑二区| 亚洲自偷自拍图片 自拍| 久久精品熟女亚洲av麻豆精品| 中文字幕人妻熟女乱码| 成人影院久久| 午夜影院日韩av| 99国产精品一区二区蜜桃av | 国产成人精品在线电影| 午夜成年电影在线免费观看| 亚洲专区中文字幕在线| 最近最新免费中文字幕在线| 成人18禁在线播放| 咕卡用的链子| 久久精品91无色码中文字幕| 成在线人永久免费视频| 国产成人精品无人区| a在线观看视频网站| 欧美日韩一级在线毛片| 黄色片一级片一级黄色片| 亚洲色图 男人天堂 中文字幕| 黄色片一级片一级黄色片| 高清av免费在线| 欧美乱色亚洲激情| 亚洲中文日韩欧美视频| 十八禁人妻一区二区| 国产免费av片在线观看野外av| 国产亚洲av高清不卡| 他把我摸到了高潮在线观看| 最近最新免费中文字幕在线| 日日爽夜夜爽网站| 国产深夜福利视频在线观看| 午夜福利在线免费观看网站| 可以免费在线观看a视频的电影网站| 国产成人精品久久二区二区免费| 男女午夜视频在线观看| 男女之事视频高清在线观看| av天堂久久9| 国产亚洲一区二区精品| 亚洲熟妇中文字幕五十中出 | 国产99久久九九免费精品| 动漫黄色视频在线观看| 欧美日韩亚洲综合一区二区三区_| 最新在线观看一区二区三区| 精品一区二区三区视频在线观看免费 | 脱女人内裤的视频| 日本欧美视频一区| 久久午夜亚洲精品久久| 亚洲自偷自拍图片 自拍| 久久精品国产99精品国产亚洲性色 | 国产精品电影一区二区三区 | 国产日韩欧美亚洲二区| 亚洲美女黄片视频| 午夜免费观看网址| 丝袜美腿诱惑在线| 超色免费av| 久久天躁狠狠躁夜夜2o2o| 免费看十八禁软件| 色精品久久人妻99蜜桃| 狠狠婷婷综合久久久久久88av| 亚洲欧美一区二区三区黑人| 久久精品国产亚洲av高清一级| 桃红色精品国产亚洲av| 国产精华一区二区三区| 欧美人与性动交α欧美精品济南到| 精品国产一区二区久久| 性少妇av在线| 欧美一级毛片孕妇| 91麻豆av在线| 久久 成人 亚洲| 色在线成人网| 一级作爱视频免费观看| 老司机在亚洲福利影院| 露出奶头的视频| 欧美另类亚洲清纯唯美| 伊人久久大香线蕉亚洲五| 久久精品国产亚洲av高清一级| xxx96com| 免费少妇av软件| 欧美日韩成人在线一区二区| 欧美 亚洲 国产 日韩一| 国产欧美日韩一区二区三| 欧美日韩福利视频一区二区| 亚洲一区中文字幕在线| 日韩熟女老妇一区二区性免费视频| 老司机午夜福利在线观看视频| 在线观看免费视频日本深夜| 日韩欧美免费精品| 怎么达到女性高潮| 国产高清激情床上av| 麻豆国产av国片精品| 国产成+人综合+亚洲专区| 午夜福利一区二区在线看| 欧美日韩视频精品一区| 老熟妇乱子伦视频在线观看| 亚洲人成77777在线视频| 欧美中文综合在线视频| av天堂在线播放| 精品国产乱码久久久久久男人| 最近最新中文字幕大全免费视频| 久久精品亚洲精品国产色婷小说| 9色porny在线观看| 亚洲欧美日韩高清在线视频| 9色porny在线观看| 人人妻人人添人人爽欧美一区卜| 可以免费在线观看a视频的电影网站| 91麻豆av在线| 久久ye,这里只有精品| 午夜免费鲁丝| 一本大道久久a久久精品| 国产精品98久久久久久宅男小说| 午夜视频精品福利| 国产av一区二区精品久久| 国产精品一区二区在线观看99| 国产黄色免费在线视频| 亚洲情色 制服丝袜| 午夜福利视频在线观看免费| tocl精华| 久久国产精品影院| 黄频高清免费视频| 色综合婷婷激情| 国产一区在线观看成人免费| aaaaa片日本免费| 国产亚洲精品久久久久久毛片 | 怎么达到女性高潮| 国产欧美日韩一区二区三| 女人精品久久久久毛片| 一进一出抽搐gif免费好疼 | xxx96com| 在线永久观看黄色视频| 欧美另类亚洲清纯唯美| 欧美av亚洲av综合av国产av| 精品国产一区二区久久| 中文字幕制服av| 老鸭窝网址在线观看| 精品卡一卡二卡四卡免费| 亚洲精品一二三| 成人国语在线视频| 韩国精品一区二区三区| 国产熟女午夜一区二区三区| 欧美成人午夜精品| 亚洲aⅴ乱码一区二区在线播放 | 99re在线观看精品视频| e午夜精品久久久久久久| 激情视频va一区二区三区| 中文字幕另类日韩欧美亚洲嫩草| 看片在线看免费视频| av视频免费观看在线观看| 日本vs欧美在线观看视频| 一区二区三区激情视频| 亚洲五月天丁香| 在线观看舔阴道视频| 国产又色又爽无遮挡免费看| 久久香蕉国产精品| 国产野战对白在线观看| av有码第一页| 后天国语完整版免费观看| 丰满人妻熟妇乱又伦精品不卡| 又黄又粗又硬又大视频| 亚洲精品在线观看二区| 亚洲av日韩精品久久久久久密| 久久久国产成人免费| 日日爽夜夜爽网站| 国产精品久久久久久精品古装| 国产免费av片在线观看野外av| 母亲3免费完整高清在线观看| 高清av免费在线| 少妇 在线观看| 国产免费av片在线观看野外av| 1024视频免费在线观看| www.精华液| 麻豆成人av在线观看| 久久亚洲精品不卡| 国产亚洲精品久久久久5区| 成熟少妇高潮喷水视频| 国产乱人伦免费视频| 不卡一级毛片| 亚洲免费av在线视频| 国产精品电影一区二区三区 | 母亲3免费完整高清在线观看| 久久人妻av系列| 大型黄色视频在线免费观看| 成在线人永久免费视频| 操美女的视频在线观看| 热re99久久国产66热| 欧美+亚洲+日韩+国产| 午夜亚洲福利在线播放| 熟女少妇亚洲综合色aaa.| 亚洲精品成人av观看孕妇| 天堂动漫精品| 亚洲欧美激情综合另类| 国产精品国产高清国产av | 精品第一国产精品| ponron亚洲| 欧美日韩亚洲综合一区二区三区_| 法律面前人人平等表现在哪些方面| 国产一区二区三区视频了| 91精品三级在线观看| 午夜成年电影在线免费观看| 久久精品熟女亚洲av麻豆精品| 女人精品久久久久毛片| 久久国产乱子伦精品免费另类| 国产国语露脸激情在线看| 精品一区二区三区视频在线观看免费 | 91精品三级在线观看| 久久影院123| 国产高清激情床上av| 高清av免费在线| 搡老岳熟女国产| 女人被狂操c到高潮| 韩国精品一区二区三区| 性少妇av在线| 精品久久久久久,| 亚洲欧美激情综合另类| 91成人精品电影| 国产成人一区二区三区免费视频网站| 国产精品影院久久| 极品人妻少妇av视频| 自线自在国产av| 久久久国产成人免费| 999精品在线视频| 电影成人av| 女性被躁到高潮视频| 国产有黄有色有爽视频| 亚洲专区字幕在线| 午夜亚洲福利在线播放| 欧美激情久久久久久爽电影 | videosex国产| 中文字幕高清在线视频| 成在线人永久免费视频| 国产免费男女视频| 男女下面插进去视频免费观看| 丝袜美足系列| avwww免费| 国产男靠女视频免费网站| 国产蜜桃级精品一区二区三区 | 欧洲精品卡2卡3卡4卡5卡区| 亚洲精品一卡2卡三卡4卡5卡| 国产在线观看jvid| 视频在线观看一区二区三区| 一级毛片精品| 亚洲第一av免费看| 波多野结衣一区麻豆| 香蕉久久夜色| 一进一出好大好爽视频| 国产成人av教育| 国产乱人伦免费视频| 国产亚洲欧美在线一区二区| 中出人妻视频一区二区| 热re99久久精品国产66热6| 国产av精品麻豆| www.熟女人妻精品国产| 91字幕亚洲| 一夜夜www| 亚洲色图综合在线观看| 女人久久www免费人成看片| 欧美最黄视频在线播放免费 | 女人久久www免费人成看片| 国产1区2区3区精品| 啦啦啦 在线观看视频| 久久青草综合色| 国产欧美日韩精品亚洲av| 国产成人av激情在线播放| 人人妻人人爽人人添夜夜欢视频| 最新美女视频免费是黄的| 午夜免费观看网址| 看免费av毛片| 国产男女超爽视频在线观看| 午夜福利影视在线免费观看| cao死你这个sao货| 亚洲欧美日韩另类电影网站| 国产精华一区二区三区| 久久久久久久国产电影| 亚洲人成伊人成综合网2020| 免费黄频网站在线观看国产| 午夜久久久在线观看| 国产高清激情床上av| 亚洲欧洲精品一区二区精品久久久| 1024香蕉在线观看| 亚洲 欧美一区二区三区| 在线天堂中文资源库| 日日爽夜夜爽网站| 国产有黄有色有爽视频| 欧美日韩av久久| 久久天躁狠狠躁夜夜2o2o| 亚洲熟女毛片儿| 大香蕉久久成人网| 男人舔女人的私密视频| 99热网站在线观看| av在线播放免费不卡| 国产成人啪精品午夜网站| 久久久精品免费免费高清| 久久影院123| 捣出白浆h1v1| 91九色精品人成在线观看| 日韩视频一区二区在线观看| av不卡在线播放| 国产成人精品无人区| 午夜激情av网站| 在线观看午夜福利视频| 久久久久久人人人人人| 在线av久久热| 国产又色又爽无遮挡免费看| 精品第一国产精品| 久久久久久久午夜电影 | tube8黄色片| 美女扒开内裤让男人捅视频| 亚洲成人国产一区在线观看| av国产精品久久久久影院| 成人免费观看视频高清| 又黄又粗又硬又大视频| 视频在线观看一区二区三区| 女人被躁到高潮嗷嗷叫费观| 日韩一卡2卡3卡4卡2021年| 免费少妇av软件| 国产高清videossex| 亚洲,欧美精品.| 免费观看精品视频网站| 免费高清在线观看日韩| 亚洲国产精品合色在线| 久久性视频一级片| 嫩草影视91久久| 欧美丝袜亚洲另类 | 又黄又爽又免费观看的视频| 国产在线观看jvid| 18在线观看网站| 美国免费a级毛片| 国产一区二区三区综合在线观看| 欧美大码av| 亚洲熟妇熟女久久| 免费在线观看视频国产中文字幕亚洲| tocl精华| 身体一侧抽搐| 欧美黄色淫秽网站| 久久精品国产亚洲av香蕉五月 | 欧美日本中文国产一区发布| 黑人操中国人逼视频| а√天堂www在线а√下载 | av片东京热男人的天堂| 一a级毛片在线观看| 亚洲欧洲精品一区二区精品久久久| 欧美日本中文国产一区发布| 欧美人与性动交α欧美软件| 18禁裸乳无遮挡免费网站照片 | 视频在线观看一区二区三区| 午夜精品国产一区二区电影| 777米奇影视久久| 久久中文看片网| 真人做人爱边吃奶动态| 69av精品久久久久久| 动漫黄色视频在线观看| 两人在一起打扑克的视频| 亚洲国产看品久久| 怎么达到女性高潮| 男女之事视频高清在线观看| 成人特级黄色片久久久久久久| 美女 人体艺术 gogo| 在线观看一区二区三区激情| 欧美大码av| 视频区欧美日本亚洲| 超碰成人久久| a在线观看视频网站| 日韩制服丝袜自拍偷拍| 午夜久久久在线观看| 天堂√8在线中文| 精品久久久精品久久久| a级毛片在线看网站| 成人av一区二区三区在线看| 首页视频小说图片口味搜索| 国产欧美日韩一区二区三| 91精品国产国语对白视频| 黄频高清免费视频| 999久久久精品免费观看国产| 精品国产一区二区久久| 久热这里只有精品99| 国精品久久久久久国模美| 中文字幕另类日韩欧美亚洲嫩草| 亚洲成人免费电影在线观看| 美女 人体艺术 gogo| 亚洲精品久久成人aⅴ小说| 精品国内亚洲2022精品成人 | 色综合婷婷激情| 亚洲国产欧美一区二区综合| 久久人人97超碰香蕉20202| 中出人妻视频一区二区| 99国产精品免费福利视频| 成人永久免费在线观看视频| 又大又爽又粗| 国产男靠女视频免费网站| 国产高清videossex| 色94色欧美一区二区| 一边摸一边抽搐一进一出视频| 波多野结衣一区麻豆| 欧美av亚洲av综合av国产av| 国产成人av激情在线播放| 中文字幕另类日韩欧美亚洲嫩草| 久久久精品区二区三区| 久久精品国产99精品国产亚洲性色 | 99国产极品粉嫩在线观看| 国产午夜精品久久久久久| 日日夜夜操网爽| 午夜福利在线免费观看网站| 在线国产一区二区在线| 黄色视频不卡| 久久青草综合色| 捣出白浆h1v1| 美女福利国产在线| 最近最新免费中文字幕在线| av线在线观看网站| 免费av中文字幕在线| 美女高潮到喷水免费观看| 又黄又爽又免费观看的视频| 欧美日韩福利视频一区二区| 一区二区日韩欧美中文字幕| 色播在线永久视频| 亚洲人成电影观看| 免费看a级黄色片| 亚洲精品国产色婷婷电影| 亚洲av日韩精品久久久久久密| 国产乱人伦免费视频| 人人妻人人澡人人看| 国产精品香港三级国产av潘金莲| 欧美最黄视频在线播放免费 | 18禁美女被吸乳视频| 精品国产超薄肉色丝袜足j| 国产单亲对白刺激| 天堂√8在线中文| 激情在线观看视频在线高清 | 欧美在线黄色| 免费一级毛片在线播放高清视频 | 狠狠婷婷综合久久久久久88av| 精品国产超薄肉色丝袜足j| 久久草成人影院| 99国产精品免费福利视频| 岛国在线观看网站| 国产成人av教育| 久久天堂一区二区三区四区| 亚洲专区字幕在线| 久久久国产成人免费| 一区福利在线观看| 一级毛片高清免费大全| 又大又爽又粗| 亚洲国产精品sss在线观看 | 岛国在线观看网站| 人人妻人人澡人人看| 亚洲视频免费观看视频| 国产成+人综合+亚洲专区| 国产欧美日韩一区二区精品| 亚洲国产看品久久| 在线国产一区二区在线| 国产精品偷伦视频观看了| 午夜福利视频在线观看免费| 免费在线观看日本一区| 日韩人妻精品一区2区三区| 十八禁高潮呻吟视频| 最新美女视频免费是黄的| 日本a在线网址| 天天躁夜夜躁狠狠躁躁| av天堂久久9| 亚洲欧美一区二区三区黑人| 男人舔女人的私密视频| 久久影院123| 最近最新中文字幕大全免费视频| 亚洲 国产 在线| 久久影院123| 久久精品国产亚洲av高清一级| 男人舔女人的私密视频| 久久影院123| 亚洲一码二码三码区别大吗| 纯流量卡能插随身wifi吗| 夫妻午夜视频| 成在线人永久免费视频| 999精品在线视频| 夫妻午夜视频| 免费观看人在逋| 悠悠久久av| 国产精品欧美亚洲77777| 久久久久精品人妻al黑| av电影中文网址| 麻豆av在线久日| 校园春色视频在线观看| av线在线观看网站| 亚洲精品乱久久久久久| 国产淫语在线视频| 久久人妻av系列| 国产免费现黄频在线看| 91在线观看av| 人成视频在线观看免费观看| 动漫黄色视频在线观看| 视频区图区小说| 国产在线观看jvid|