• <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
    国产精品久久久久久精品电影小说 | 国产精品一区二区三区四区免费观看| 欧美日本视频| 大香蕉久久网| 中文资源天堂在线| 亚洲国产成人一精品久久久| 秋霞在线观看毛片| 91精品国产九色| 国产v大片淫在线免费观看| 99久国产av精品| 亚洲av在线观看美女高潮| 最近最新中文字幕大全电影3| 精品人妻一区二区三区麻豆| 乱码一卡2卡4卡精品| 成人欧美大片| 大又大粗又爽又黄少妇毛片口| 在线免费观看的www视频| 国产极品天堂在线| 黄色日韩在线| 中文字幕av在线有码专区| 免费av观看视频| 少妇熟女aⅴ在线视频| 亚洲色图av天堂| 永久网站在线| av播播在线观看一区| 在线观看一区二区三区| 亚洲av免费在线观看| 狂野欧美激情性xxxx在线观看| 91在线精品国自产拍蜜月| 18禁在线无遮挡免费观看视频| 99久久精品国产国产毛片| 国产在线一区二区三区精| 亚洲色图av天堂| eeuss影院久久| 在线观看美女被高潮喷水网站| 一级黄片播放器| 久久久精品免费免费高清| 麻豆久久精品国产亚洲av| 丰满人妻一区二区三区视频av| 亚洲高清免费不卡视频| 18禁动态无遮挡网站| 99re6热这里在线精品视频| 日产精品乱码卡一卡2卡三| av一本久久久久| 国产麻豆成人av免费视频| 成人午夜精彩视频在线观看| 天天躁夜夜躁狠狠久久av| 少妇的逼好多水| 久久久色成人| 久久久久久久亚洲中文字幕| 寂寞人妻少妇视频99o| 爱豆传媒免费全集在线观看| 国内精品宾馆在线| 国产淫语在线视频| 日韩av不卡免费在线播放| 久久久久久国产a免费观看| 国产精品一区www在线观看| 可以在线观看毛片的网站| 亚洲av日韩在线播放| 亚洲av福利一区| 精品欧美国产一区二区三| 成人美女网站在线观看视频| 亚洲国产欧美人成| 三级毛片av免费| 成年女人在线观看亚洲视频 | 深夜a级毛片| 欧美日韩视频高清一区二区三区二| 国产乱人偷精品视频| 久久久久久久久久人人人人人人| 免费av毛片视频| 一级毛片我不卡| 十八禁国产超污无遮挡网站| 国产午夜福利久久久久久| 亚州av有码| 国产精品嫩草影院av在线观看| 精品久久久噜噜| 两个人的视频大全免费| 精品久久久久久久久av| 亚洲精品第二区| 免费看不卡的av| 国产黄频视频在线观看| 校园人妻丝袜中文字幕| 国产精品蜜桃在线观看| 伦理电影大哥的女人| 草草在线视频免费看| 一区二区三区免费毛片| 国产综合懂色| 午夜福利网站1000一区二区三区| 麻豆国产97在线/欧美| 日韩 亚洲 欧美在线| 人人妻人人看人人澡| 自拍偷自拍亚洲精品老妇| 久久综合国产亚洲精品| 欧美 日韩 精品 国产| www.av在线官网国产| 免费播放大片免费观看视频在线观看| 一区二区三区免费毛片| 欧美一级a爱片免费观看看| 成人毛片60女人毛片免费| 麻豆国产97在线/欧美| 秋霞在线观看毛片| 久久鲁丝午夜福利片| 婷婷六月久久综合丁香| 国内精品宾馆在线| 人人妻人人看人人澡| 欧美日韩在线观看h| 日韩成人av中文字幕在线观看| 久久久久久久大尺度免费视频| .国产精品久久| 在线免费观看的www视频| av女优亚洲男人天堂| 小蜜桃在线观看免费完整版高清| 汤姆久久久久久久影院中文字幕 | 成人一区二区视频在线观看| 国产极品天堂在线| 日日摸夜夜添夜夜爱| 色尼玛亚洲综合影院| 永久网站在线| 舔av片在线| 在线免费观看不下载黄p国产| 久久亚洲国产成人精品v| 91aial.com中文字幕在线观看| 嫩草影院新地址| 精品久久久久久成人av| 你懂的网址亚洲精品在线观看| 又粗又硬又长又爽又黄的视频| 秋霞在线观看毛片| 精品酒店卫生间| 七月丁香在线播放| 成人av在线播放网站| 午夜免费男女啪啪视频观看| 91aial.com中文字幕在线观看| 亚洲欧美日韩卡通动漫| 在线观看人妻少妇| 午夜福利高清视频| 超碰av人人做人人爽久久| 精品久久久久久成人av| 日本黄大片高清| 听说在线观看完整版免费高清| 欧美成人精品欧美一级黄| 国产精品1区2区在线观看.| 一本—道久久a久久精品蜜桃钙片 精品乱码久久久久久99久播 | 久久人人爽人人片av| 内射极品少妇av片p| 久久精品久久久久久噜噜老黄| 国产一区二区亚洲精品在线观看| 国产中年淑女户外野战色| 国产精品麻豆人妻色哟哟久久 | 亚洲国产色片| 国产伦在线观看视频一区| 亚洲欧美成人综合另类久久久| 春色校园在线视频观看| 午夜视频国产福利| 又大又黄又爽视频免费| 五月天丁香电影| 国产精品人妻久久久久久| 男人舔女人下体高潮全视频| 成年人午夜在线观看视频 | 国产一区二区亚洲精品在线观看| 国产精品蜜桃在线观看| 亚洲欧美一区二区三区黑人 | 国产老妇女一区| 国产精品三级大全| 嘟嘟电影网在线观看| 成人亚洲欧美一区二区av| 天堂√8在线中文| 久久99热6这里只有精品| 色综合色国产| 2018国产大陆天天弄谢| 亚洲精品456在线播放app| 欧美区成人在线视频| 男女边吃奶边做爰视频| 欧美日韩亚洲高清精品| 日本-黄色视频高清免费观看| 国产精品日韩av在线免费观看| 成人二区视频| 精品熟女少妇av免费看| 99九九线精品视频在线观看视频| 亚洲天堂国产精品一区在线| 亚洲精品乱码久久久久久按摩| 91在线精品国自产拍蜜月| 久久久久久久亚洲中文字幕| 国产黄频视频在线观看| 午夜免费激情av| 人人妻人人看人人澡| 国产不卡一卡二| 亚洲av免费高清在线观看| 国产成人一区二区在线| 我的女老师完整版在线观看| 欧美xxxx性猛交bbbb| 免费看光身美女| 久久久久久久久大av| 婷婷色综合www| kizo精华| 久久久久久伊人网av| 一级黄片播放器| 夫妻性生交免费视频一级片| 成人一区二区视频在线观看| av免费观看日本| 日本欧美国产在线视频| 欧美激情国产日韩精品一区| 又粗又硬又长又爽又黄的视频| 嘟嘟电影网在线观看| 寂寞人妻少妇视频99o| 日本av手机在线免费观看| 国产 一区 欧美 日韩| 神马国产精品三级电影在线观看| 精品久久久久久久末码| 少妇的逼水好多| 亚洲欧美成人综合另类久久久| 水蜜桃什么品种好| 国产精品一区二区在线观看99 | 亚洲国产成人一精品久久久| 国产精品综合久久久久久久免费| 啦啦啦中文免费视频观看日本| 午夜精品一区二区三区免费看| 久久99蜜桃精品久久| 国模一区二区三区四区视频| 欧美高清成人免费视频www| 国产伦精品一区二区三区视频9| 麻豆成人午夜福利视频| 黄色日韩在线| 18禁在线播放成人免费| 亚洲三级黄色毛片| 日韩制服骚丝袜av| 人妻系列 视频| 老司机影院毛片| 狂野欧美激情性xxxx在线观看| 亚洲精品一区蜜桃| 免费高清在线观看视频在线观看| 久久国内精品自在自线图片| 久久鲁丝午夜福利片| 久久久国产一区二区| 久久久久久久大尺度免费视频| 波野结衣二区三区在线| 免费观看a级毛片全部| 三级国产精品片| 国产91av在线免费观看| 中文资源天堂在线| 自拍偷自拍亚洲精品老妇| 少妇裸体淫交视频免费看高清| 亚洲精品中文字幕在线视频 | 欧美潮喷喷水| 天天躁夜夜躁狠狠久久av| 噜噜噜噜噜久久久久久91| 久久精品久久久久久久性| 欧美+日韩+精品| 又大又黄又爽视频免费| videossex国产| 天堂网av新在线| 亚洲精品乱码久久久久久按摩| 欧美一区二区亚洲| 三级毛片av免费| 国产av码专区亚洲av| 嫩草影院新地址| 亚洲av中文字字幕乱码综合| 在线免费观看的www视频| 如何舔出高潮| 亚洲精品日韩在线中文字幕| 免费观看的影片在线观看| 日韩国内少妇激情av| 国产黄a三级三级三级人| 熟妇人妻不卡中文字幕| 汤姆久久久久久久影院中文字幕 | .国产精品久久| 深爱激情五月婷婷| 可以在线观看毛片的网站| 亚洲av男天堂| 久久久久久久大尺度免费视频| 亚洲精品日韩在线中文字幕| 国产老妇伦熟女老妇高清| 亚洲成色77777| 亚洲av一区综合| av专区在线播放| 色吧在线观看| 精品99又大又爽又粗少妇毛片| 国产精品国产三级专区第一集| 精品欧美国产一区二区三| 免费av不卡在线播放| 一级毛片久久久久久久久女| 小蜜桃在线观看免费完整版高清| 国产成人精品婷婷| 天堂影院成人在线观看| 国产一区二区在线观看日韩| 日本黄色片子视频| 亚洲精品亚洲一区二区| 日本欧美国产在线视频| 国产熟女欧美一区二区| 国产精品久久视频播放| 十八禁网站网址无遮挡 | 国产精品.久久久| 最近视频中文字幕2019在线8| 大又大粗又爽又黄少妇毛片口| 99热网站在线观看| 亚洲精品国产av蜜桃| freevideosex欧美| 亚洲欧美中文字幕日韩二区| 插逼视频在线观看| 天美传媒精品一区二区| 国产午夜精品论理片| 欧美另类一区| 午夜免费观看性视频| 丰满人妻一区二区三区视频av| 九九爱精品视频在线观看| 亚洲乱码一区二区免费版| 最近2019中文字幕mv第一页| 国产高潮美女av| 午夜免费激情av| 波野结衣二区三区在线| 91精品伊人久久大香线蕉| 麻豆成人av视频| 久久精品综合一区二区三区| 国产成人a区在线观看| 菩萨蛮人人尽说江南好唐韦庄| 亚洲精品456在线播放app| 日产精品乱码卡一卡2卡三| 亚洲成人久久爱视频| 欧美xxⅹ黑人| 国产亚洲精品久久久com| 黄色日韩在线| 六月丁香七月| 成人亚洲精品一区在线观看 | 国产伦精品一区二区三区视频9| 欧美成人精品欧美一级黄| av播播在线观看一区| 亚洲精品成人av观看孕妇| 国产精品一区二区性色av| 美女cb高潮喷水在线观看| 人人妻人人澡人人爽人人夜夜 | 国产精品不卡视频一区二区| 国产高清国产精品国产三级 | 一级爰片在线观看| 日韩欧美三级三区| 老师上课跳d突然被开到最大视频| 久久这里只有精品中国| 欧美成人午夜免费资源| 日本wwww免费看| 午夜福利成人在线免费观看| 亚洲成人中文字幕在线播放| 特大巨黑吊av在线直播| 哪个播放器可以免费观看大片| 99热这里只有是精品在线观看| 亚洲精品日韩在线中文字幕| 久久精品国产亚洲网站| 婷婷色麻豆天堂久久| 三级毛片av免费| 中文字幕av成人在线电影| 简卡轻食公司| 男女边摸边吃奶| 成人性生交大片免费视频hd| 国产乱人视频| 亚洲精品第二区| 男人舔奶头视频| 最近的中文字幕免费完整| 成人毛片a级毛片在线播放| 精品欧美国产一区二区三| 亚洲av在线观看美女高潮| 亚洲精品日韩av片在线观看| 如何舔出高潮| 精品国产三级普通话版| 免费黄网站久久成人精品| 日韩中字成人| 亚洲国产成人一精品久久久| 日韩不卡一区二区三区视频在线| 免费黄网站久久成人精品| 亚洲欧洲国产日韩| 高清在线视频一区二区三区| 日韩欧美三级三区| 国产探花在线观看一区二区| 国国产精品蜜臀av免费| 看黄色毛片网站| 一级毛片电影观看| 日日摸夜夜添夜夜添av毛片| 偷拍熟女少妇极品色| 欧美激情国产日韩精品一区| 久久97久久精品| 99久久九九国产精品国产免费| 国产免费视频播放在线视频 | 亚洲欧美中文字幕日韩二区| 亚洲激情五月婷婷啪啪| 国产亚洲一区二区精品| 精华霜和精华液先用哪个| 中文字幕亚洲精品专区| 亚洲国产av新网站| 十八禁国产超污无遮挡网站| 亚洲内射少妇av| 午夜免费观看性视频| 丰满乱子伦码专区| 美女被艹到高潮喷水动态| 久久精品综合一区二区三区| 亚洲无线观看免费| 观看美女的网站| 国内精品一区二区在线观看| 好男人视频免费观看在线| 亚洲成人av在线免费| 最后的刺客免费高清国语| 欧美三级亚洲精品| 国产精品美女特级片免费视频播放器| 亚洲精品久久久久久婷婷小说| 亚洲人与动物交配视频| 亚洲成人精品中文字幕电影| 成年av动漫网址| 日韩制服骚丝袜av| 免费少妇av软件| 一级片'在线观看视频| 久久久精品免费免费高清| 舔av片在线| 国产精品99久久久久久久久| 男女视频在线观看网站免费| av.在线天堂| 亚洲国产精品成人久久小说| av在线观看视频网站免费| 国产69精品久久久久777片| 91av网一区二区| 亚洲美女搞黄在线观看| 99久久中文字幕三级久久日本| 亚洲在线观看片| 久久久久久久午夜电影| 色5月婷婷丁香| 一区二区三区四区激情视频| 国产高清不卡午夜福利| 亚洲国产精品成人久久小说| 2021天堂中文幕一二区在线观| 久热久热在线精品观看| 亚洲怡红院男人天堂| 丝袜喷水一区| 色哟哟·www| 中文资源天堂在线| 男女视频在线观看网站免费| 国产一级毛片七仙女欲春2| 亚洲成人久久爱视频| 国产三级在线视频| 日本三级黄在线观看| 97超视频在线观看视频| 国产伦精品一区二区三区四那| 噜噜噜噜噜久久久久久91| 伊人久久精品亚洲午夜| 18禁裸乳无遮挡免费网站照片| av在线蜜桃| 午夜激情欧美在线| 免费观看a级毛片全部| 亚洲精品一区蜜桃| 亚洲内射少妇av| 国产伦理片在线播放av一区| 欧美成人a在线观看| 成年女人看的毛片在线观看| 久久人人爽人人片av| 日本色播在线视频| 老女人水多毛片| 久久久国产一区二区| 91精品一卡2卡3卡4卡| 久久6这里有精品| 亚洲成人av在线免费| 麻豆成人午夜福利视频| 日韩欧美精品v在线| 精品99又大又爽又粗少妇毛片| 日韩大片免费观看网站| 免费人成在线观看视频色| 国产成人免费观看mmmm| 丰满人妻一区二区三区视频av| 夜夜爽夜夜爽视频| 国产精品女同一区二区软件| 久久久久久久久久人人人人人人| 人妻少妇偷人精品九色| 亚洲欧美日韩无卡精品| 尤物成人国产欧美一区二区三区| 精品久久久久久久久av| 亚洲欧美日韩东京热| 一区二区三区免费毛片| 中文字幕av成人在线电影| 一级av片app| 七月丁香在线播放| 国产又色又爽无遮挡免| 午夜福利视频精品| 边亲边吃奶的免费视频| 亚洲一区高清亚洲精品| 国产成人免费观看mmmm| 国产又色又爽无遮挡免| 天天躁日日操中文字幕| 两个人的视频大全免费| 久热久热在线精品观看| 国产精品人妻久久久影院| 在线播放无遮挡| 欧美成人a在线观看| 午夜福利网站1000一区二区三区| 一级av片app| 免费电影在线观看免费观看| 国产又色又爽无遮挡免| 六月丁香七月| 国内少妇人妻偷人精品xxx网站| 国产乱来视频区| 婷婷六月久久综合丁香| 国产伦精品一区二区三区四那| 免费观看性生交大片5| 人体艺术视频欧美日本| 免费在线观看成人毛片| 精品国产三级普通话版| 午夜免费观看性视频| 久久精品久久精品一区二区三区| 国产成人精品久久久久久| 麻豆av噜噜一区二区三区| 精品一区二区免费观看| 国产成人午夜福利电影在线观看| 性插视频无遮挡在线免费观看| 精品一区二区三区人妻视频| 嘟嘟电影网在线观看| 国产精品国产三级国产av玫瑰| 中文字幕av在线有码专区| 一个人观看的视频www高清免费观看| 日本-黄色视频高清免费观看| 99热这里只有是精品在线观看| 国产成人91sexporn| 午夜视频国产福利| 六月丁香七月| 亚洲av中文av极速乱| 内地一区二区视频在线| 久久精品综合一区二区三区| 成人亚洲精品一区在线观看 | 国产精品无大码| 国产 一区 欧美 日韩| 乱人视频在线观看| 国产熟女欧美一区二区| 麻豆av噜噜一区二区三区| 国产 亚洲一区二区三区 | 天堂av国产一区二区熟女人妻| 亚洲aⅴ乱码一区二区在线播放| 永久网站在线| 如何舔出高潮| 亚洲内射少妇av| 国产精品一区二区三区四区免费观看| 简卡轻食公司| 亚洲av成人精品一二三区| 精品久久久久久久人妻蜜臀av| 免费观看无遮挡的男女| 日韩人妻高清精品专区| 亚洲美女搞黄在线观看| 91久久精品国产一区二区三区| 免费av不卡在线播放| 久久人人爽人人片av| 亚洲av男天堂| 国产伦在线观看视频一区| 国产亚洲av嫩草精品影院| 深夜a级毛片| 日韩视频在线欧美| 丝袜美腿在线中文| 久久精品人妻少妇| 日韩欧美国产在线观看| 嫩草影院精品99| 大陆偷拍与自拍| 国产亚洲一区二区精品| xxx大片免费视频| 国产精品不卡视频一区二区| 午夜免费激情av| 国产真实伦视频高清在线观看| 国产色爽女视频免费观看| 国产黄色小视频在线观看| 人妻夜夜爽99麻豆av| 中文字幕免费在线视频6| 久久久久久久午夜电影| 亚洲av男天堂| 色5月婷婷丁香| 国产精品熟女久久久久浪| 国产 一区精品| 国产免费又黄又爽又色| 亚洲欧美日韩卡通动漫| 男女边摸边吃奶| 极品少妇高潮喷水抽搐| 99九九线精品视频在线观看视频| 亚洲欧美精品自产自拍| 91精品国产九色| 亚洲欧洲日产国产| 欧美日韩综合久久久久久| 欧美3d第一页| 国产男人的电影天堂91| 免费无遮挡裸体视频| 秋霞在线观看毛片| 亚洲精品色激情综合| 精品酒店卫生间| 亚洲精品成人av观看孕妇| 亚洲一级一片aⅴ在线观看| 免费看光身美女| 亚洲成人久久爱视频| 日日撸夜夜添| 日本熟妇午夜| 51国产日韩欧美| 最近最新中文字幕免费大全7| 亚洲,欧美,日韩| 五月天丁香电影| 热99在线观看视频| 91狼人影院| av女优亚洲男人天堂| 久久久成人免费电影| 欧美+日韩+精品| 能在线免费观看的黄片| 精品久久久久久电影网| 国产伦理片在线播放av一区| 国产淫片久久久久久久久| 精品久久久久久电影网| 99re6热这里在线精品视频| 国产精品一区www在线观看| 国产成人免费观看mmmm| 少妇熟女aⅴ在线视频| 亚洲精品第二区| 亚洲自偷自拍三级| 一个人看的www免费观看视频| 色视频www国产| 久久久久久久久久黄片| 久久久久久久久久久免费av| 韩国高清视频一区二区三区| av又黄又爽大尺度在线免费看| 欧美激情久久久久久爽电影| 久久精品国产亚洲网站| 一级片'在线观看视频| 欧美日韩综合久久久久久| 欧美成人精品欧美一级黄|