日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

HDFS2.x之RPC流程分析

發(fā)布時間:2024/4/17 编程问答 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HDFS2.x之RPC流程分析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

HDFS2.x之RPC流程分析

1 概述

??? Hadoop提供了一個統(tǒng)一的RPC機制來處理client-namenode, namenode-dataname,client-dataname之間的通信。RPC是整個Hadoop中通信框架的核心,目前采用ProtocolBuf作為RPC的默認(rèn)實現(xiàn)。RPC的整體調(diào)用流程如下:

?

2 Protobuf

??? Protocol buffer(以下簡稱PB),PB是Google開源的一種輕便高效的結(jié)構(gòu)化數(shù)據(jù)存儲格式,可以用于結(jié)構(gòu)化數(shù)據(jù)的序列化和反序列化,很適合做數(shù)據(jù)存儲或 RPC 數(shù)據(jù)交換格式,目前提供了 C++、Java、Python 三種語言的 API。序列化/反序列化速度快,網(wǎng)絡(luò)或者磁盤IO傳輸?shù)臄?shù)據(jù)少。

RPC就是一臺機器上的某個進程要調(diào)用另外一臺機器上的某個進程的方法,中間通信傳輸?shù)木褪穷愃朴凇胺椒?shù)1、參數(shù)2……”這樣的信息,是結(jié)構(gòu)化的。

我們要定義一種PB實現(xiàn)的RPC傳輸格式,首先要定義相應(yīng)的.proto文件,在Hadoop common工程里,這些文件放在hadoop-common\src\main\proto目錄下;在Hadoop HDFS工程里這些文件放在hadoop-hdfs\src\main\proto目錄下,以此類推。Hadoop編譯腳本會調(diào)用相應(yīng)的protoc二進制程序來編譯這些以.proto結(jié)尾的文件,生成相應(yīng)的.java文件。

?

由proto文件生成的類,均提供了讀寫二進制數(shù)據(jù)的方法:

(1)byte[] toByteArray():序列化message并且返回一個原始字節(jié)類型的字節(jié)數(shù)組;

(2)static Person parseFrom(byte[] data): 將給定的字節(jié)數(shù)組解析為message;

(3)void writeTo(OutputStream output): 將序列化后的message寫入到輸出流;

(4)static Person parseFrom(InputStream input): 讀入并且將輸入流解析為一個message;

??? 另外,PB類中都有一些Builder子類,利用其中的build方法,可以完成對象的創(chuàng)建。PB的具體應(yīng)用會在下面的RPC的Client和Server的分析中說明。

3 RPC Client端

以create方法為例,來說明RPC的具體執(zhí)行流程。首先看下在Client端的執(zhí)行過程。

?

??? 由HDFS客戶端發(fā)起的create操作,在經(jīng)過一系列的前置步驟之后,會通過DFSClient類中的namenode代理來完成,其定義如下:

final ClientProtocol namenode; ……NameNodeProxies.ProxyAndInfo<ClientProtocol> proxyInfo = NameNodeProxies.createProxy(conf, nameNodeUri, ClientProtocol.class);this.dtService = proxyInfo.getDelegationTokenService();this.namenode = proxyInfo.getProxy();

?

這說明此處的namenode實現(xiàn)的接口是ClientProtocol,也就是Client與NameNode之間RPC通信的協(xié)議。

HDFS2.x引入了NameNode的HA,這就使得Client端的底層代理是有多個的,分別連接Active NN和Standby NN。但是在實際運行過程中需要對Client調(diào)用呈現(xiàn)統(tǒng)一的接口,那么就出現(xiàn)了一個上層代理來統(tǒng)一上述這兩個底層代理。所有由Clientfa來的方法調(diào)用都是先到達上層代理,通過上層代理轉(zhuǎn)發(fā)到下層代理。并且,上層代理還會根據(jù)底層代理返回的Exception來決定是否進行Failover或者Retry等操作。

在使用HA模式時,客戶端創(chuàng)建代理的總體流程是:

?

其中,

(1)RetryProxy.create方法會創(chuàng)建上層代理,用于接收客戶端的請求,并根據(jù)情況調(diào)用連接到當(dāng)前兩個NameNode的底層代理。

Proxy.newProxyInstance(proxyProvider.getInterface().getClassLoader(),new Class<?>[] { iface },new RetryInvocationHandler(proxyProvider, retryPolicy) );

?

生成的這個代理對象實現(xiàn)了ClientProtocol接口,Client可以通過這個代理對象調(diào)用ClientProtocol接口中相應(yīng)的方法。根據(jù)Java的動態(tài)代理機制,用戶對這個代理對象的方法調(diào)用都轉(zhuǎn)換為對RetryInvocationHandler(proxyProvider, retryPolicy)對象中invoke()方法的調(diào)用了。RetryInvocationHandler是與FailoverProxyProvider密切相關(guān)的,因為它需要FailoverProxyProvider提供底層代理的支持。

(2)當(dāng)代理對象接收到請求的時候,會調(diào)用invoke方法來進行處理,這里的invoke方法是上層代理中的RetryInvocationHanlder.invoke方法。

首先要獲取一個RetryPolicy,默認(rèn)的策略是在構(gòu)造RetryInvocationHandler時的參數(shù)。在Client與NameNode之間的ClientProtocol的RetryPolicy是:

RetryPolicies.failoverOnNetworkException(RetryPolicies.TRY_ONCE_THEN_FAIL, config.maxFailoverAttempts, config.failoverSleepBaseMillis,

????????????? config.failoverSleepMaxMillis)

??? 接著,會調(diào)用invokeMethod方法調(diào)用底層的代理進行實際的處理:

Object ret = invokeMethod(method, args);

? ? ?????????? -> method.invoke(currentProxy, args);

currentProxy是現(xiàn)在正在使用的底層代理。當(dāng)NN發(fā)生主從切換的時候,這個currentProxy也會發(fā)生相應(yīng)的變化。

??? 如果在調(diào)用過程中出現(xiàn)了異常,則針對不同的異常會做出不同的處理,這里的判斷是根據(jù)生成動態(tài)代理(上層代理)的時候給定的RetryPolicy策略,默認(rèn)的RetryPolicy是FailoverOnNetworkExceptionRetry,所以調(diào)用對應(yīng)的shouldRetry()函數(shù)。

(2.1)如果Retry的次數(shù)已經(jīng)超過最大嘗試的次數(shù)了,那么就返回一個

RetryAction.RetryDecision.FAIL的RetryAction。

(2.2) 如果拋出的異常是ConnectionException、NoRouteToHostException、UnKnownHostException、StandbyException、RemoteException中的一個,說明底層代理在RPC過程中Active NN連不上或者宕機或者已經(jīng)發(fā)生主從切換了,那么就需要返回一個RetryAction.RetryDecision.FAILOVER_AND_RETRY的RetryAction,需要執(zhí)行performFailover()操作,然后用另外一個NN的底層代理重試。

(2.3)如果拋出的異常是SocketException、 IOException或者其他非RemoteException的異常,那么就無法判斷這個RPC命令到底是不是執(zhí)行成功了。可能是本地的Socket或者IO出問題,也可能是NN端的Socket或者IO問題。那就進行進一步的判斷:如果被調(diào)用的方法是idempotent的,也就是多次執(zhí)行是沒有副作用的,那么就連接另外的一個底層代理重試;否則直接返回RetryAction.RetryDecision.FAIL。

(3)FailoverProxyProvider類的當(dāng)前實現(xiàn)類為ConfiguredFailoverProxyProvider。它負責(zé)管理那兩個activeNN和standbyNN的代理,當(dāng)上層代理接收到來自用戶的一個RPC命令之后,轉(zhuǎn)發(fā)給當(dāng)前正在使用的底層代理(由ConfiguredFailoverProxyProvider.currentProxyIndex決定,表示當(dāng)前的代理對象的序號)執(zhí)行,然后看是否拋出異常。如果拋出了異常,根據(jù)異常的種類來判斷是執(zhí)行failover,還是retry,或者兩者都不做。如果需要切換NameNode代理的話,則會執(zhí)行:

currentProxyIndex = (currentProxyIndex + 1) % proxies.size();

??? 底層代理的實現(xiàn)是用的非HA模式:

current.namenode = NameNodeProxies.createNonHAProxy(conf,

??????????? current.address, xface, ugi, false).getProxy();

進一步調(diào)用->NameNodeProxies.createNNProxyWithClientProtocol

??????????? ->RPC.getProtocolProxy

方法,并把生成的ClientNamenodeProtocolPB類型的代理對象proxy封裝成ClientNamenodeProtocolTranslatorPB類型。

??? 這里又會涉及到Java的動態(tài)代理,是在RPC.getProtocolProxy方法生成proxy對象的時候,RPC.getProtocolProxy的實現(xiàn)代碼為:

return getProtocolEngine(protocol,conf).getProxy(protocol, clientVersion, addr, ticket, conf, factory, rpcTimeout, connectionRetryPolicy);

這里的引擎就是protocolbuf,所以,所有的RPC請求最終都會調(diào)用ProtobufRpcEngine類中的invoke方法進行和RPC的Server端通信以及數(shù)據(jù)的序列化和反序列化操作。

??? 把Client的請求封裝成call的操作返回也是在invoke中進行的:

val = (RpcResponseWritable) client.call(RPC.RpcKind.RPC_PROTOCOL_BUFFER,

??????????? new RpcRequestWritable(rpcRequest), remoteId);

??? 封裝的具體實現(xiàn)是調(diào)用的Client類中的call方法:

//封裝成call

Call call = new Call(rpcKind, rpcRequest);

//建立和NameNode的連接

Connection connection = getConnection(remoteId, call);

//向NameNode發(fā)送數(shù)據(jù)

connection.sendParam(call);

RPC客戶端的執(zhí)行流程(HA模式)為:

?

4 RPC Server端

RPC的Server端的初始化方法是NameNode中被調(diào)用的:

rpcServer = createRpcServer(conf);

實際上初始化NameNodeRpcServer對象,調(diào)用其構(gòu)造函數(shù):

return new NameNodeRpcServer(conf, this);

??? 在構(gòu)造方法中,會初始化兩個RPCServer,一個是serviceRpcServer,用來處理數(shù)據(jù)節(jié)點發(fā)來的RPC請求,另一個是clientRpcServer,用于處理客戶端發(fā)來的RPC請求。

??? NameNodeRpcServer的構(gòu)造方法會初始化RPC的Server端所需要的handler的數(shù)目(默認(rèn)為10個),設(shè)置好處理引擎為Protocolbuf,初始化ClientNamenodeProtocolServerSideTranslatorPB類型的對象clientProtocolServerTranslator用來對傳來的數(shù)據(jù)進行反序列化,對發(fā)送的數(shù)據(jù)進行序列化。

??? 另外,會初始化提供不同RPC服務(wù)的對象BlockingService,針對客戶端、數(shù)據(jù)節(jié)點端的有:

BlockingService clientNNPbService = ClientNamenodeProtocol.newReflectiveBlockingService(clientProtocolServerTranslator);

BlockingService dnProtoPbService = DatanodeProtocolService.newReflectiveBlockingService(dnProtoPbTranslator);

??? 緊接著,會獲取RPC的Server對象:

this.clientRpcServer = RPC.getServer(org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolPB.class,clientNNPbService, socAddr.getHostName(),socAddr.getPort(), handlerCount,
false,
conf,
             namesystem.getDelegationTokenSecretManager());

?

此對象主要負責(zé)接收網(wǎng)絡(luò)連接,讀取數(shù)據(jù),調(diào)用處理數(shù)據(jù)函數(shù),返回結(jié)果。前兩個參數(shù)表示如果RPC發(fā)送過來的是ClientNamenodeProtocolPB協(xié)議,那么負責(zé)處理這個協(xié)議的服務(wù)(com.google.protobuf.BlockingService類型的對象)就是clientNNPbService。

這個Server對象里有Listener, Handler, Responder內(nèi)部類:

(1) Listener Thread:Server端會啟一個Listener線程主要用于監(jiān)聽Client發(fā)送過來的Request,Listene會啟動一個Reader的線程組,并把客戶端發(fā)來的Connection對象通過NIO的SelectionKey傳遞給Reader, Listener相當(dāng)于只作了一層轉(zhuǎn)發(fā);

(2) Reader Thread Pool:主要用于讀取Listener傳過來的Connection,并調(diào)用Connection的readAndProcess方法來讀取Request,并封裝成一個Call放到Call Queue中;

(3) Hanlder Thread Pool:Server會啟動一組線程組來處理Call Queue中Call,并把處理的Respone中放到response queue中;

(4) Responder Thread:主要處理response queue中的response,并把response發(fā)送給client,如果當(dāng)前response queue為空,則第一個新增的response會馬上發(fā)送給client端,不會通過responer thread來發(fā)送。

這個RPC.getServer()會經(jīng)過層層調(diào)用,因為現(xiàn)在默認(rèn)的RPCEngine是ProtobufRpcEngine(ProtobufRpcEngine.java),就會調(diào)用到ProtobufRpcEngine.getServer這個函數(shù),在這生成了一個Server對象,就是用于接收client端RPC請求,處理,回復(fù)的Server。這個Server對象是一個純粹的網(wǎng)絡(luò)服務(wù)的Server,在RPC中起到基礎(chǔ)網(wǎng)絡(luò)IO服務(wù)的作用。

RPC的Server端創(chuàng)建的總體流程是:

?

4.1 Reader處理

Server里的Reader線程也是基于Selector的異步IO模式,每次Select選出一個SelectionKey之后,會調(diào)用SelectionKey.attachment()把這個SelectionKey所attach的Connection對象獲取(在Listener的run方法中進行的attatch),然后執(zhí)行對應(yīng)的readAndProcess()方法,把這個SelectionKey所對應(yīng)的管道上的網(wǎng)絡(luò)IO數(shù)據(jù)讀入緩沖區(qū)。readAndProcess()方法會層層調(diào)用到Server.processData()方法,在這個方法內(nèi)部,會把剛才從網(wǎng)絡(luò)IO中讀取的數(shù)據(jù)反序列化成對象rpcRequest對象。

rpcRequest對象的類型是繼承自Writable類型的子類的對象,也就是說可以序列化/反序列化的類。這里rpcRequest對象里包含的RPC請求的內(nèi)容對象是由.proto文件中Message生成的類,也就是說PB框架自動編譯出來的類,后面可以通過調(diào)用這個類的get方法獲取RPC中真正傳輸?shù)臄?shù)據(jù)。之后把生成的rpcRequest對象放到一個Call對象里面,再把Call對象放到隊列Server.callQueue里面。

Reader的處理流程圖如下:

?

4.2 Handler處理

Handler線程默認(rèn)有10個,所以處理邏輯是多線程的。每個Handler線程會從剛才提到的callQueue中取一個Call對象,然后調(diào)用Server.call()方法執(zhí)行這個Call對象中蘊含的RPC請求。Server.call()->RPC.Server.call()->Server.getRpcInvoker()->ProtobufRpcInvoker.call()在最后這個call()函數(shù)里面真正執(zhí)行。

call方法會首先校驗這個請求發(fā)過來的數(shù)據(jù)是不是合理的。然后就是獲取實現(xiàn)這個協(xié)議的服務(wù)。實現(xiàn)協(xié)議的服務(wù)在初始化的時候已經(jīng)注冊過了,就是前面說的那個com.google.protobuf.BlockingService類型的對象clientNNPbService

這個就是實現(xiàn)Client和NameNode之間的ClientNamenodeProtocol協(xié)議的服務(wù),通過調(diào)用這句代碼:

result = service.callBlockingMethod(methodDescriptor, null, param);

就會執(zhí)行這個RPC請求的邏輯。service對象會把相應(yīng)的方法調(diào)用轉(zhuǎn)移到一個繼承自BlockingInterface接口的實現(xiàn)類上。Service的真正實現(xiàn)類就是clientProtocolServerTranslator,是newReflectiveBlockingService()這個函數(shù)的參數(shù)。并且此類是ClientNamenodeProtocolProtos中的子類,是在HDFS編譯的時候根據(jù)proto文件創(chuàng)建的。由于clientProtocolServerTranslator的構(gòu)造方法中傳遞的參數(shù)是NameNodeRpcServer,因此進一步的方法調(diào)用都在NameNodeRpcServer中實現(xiàn)的。

??? Handler處理流程如下:

?

如果元數(shù)據(jù)操作邏輯NameNodeRpcServer里面拋出IOException,那么它都會把它封裝成ServiceException,然后一路傳遞給client端。在client端,會通過ProtobufHelper.getRemoteException()把封裝在ServiceException中的IOException獲取出來。

??? RPC的Server端總體處理流程如下:

?

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/Scott007/p/3273352.html

總結(jié)

以上是生活随笔為你收集整理的HDFS2.x之RPC流程分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

亚洲日日夜夜 | 亚洲视频1| 韩日三级av | 中文字幕在线观看2018 | 精品视频不卡 | 色噜噜狠狠色综合中国 | 九九热免费在线视频 | 天堂网在线视频 | 成 人 免费 黄 色 视频 | 久久一区91 | 精品国产一区二区三区免费 | 丁香九月婷婷 | 国产在线精品一区二区三区 | av网址最新| 国产大陆亚洲精品国产 | 成人午夜性影院 | 国产尤物在线观看 | 97国产大学生情侣酒店的特点 | 99r在线观看 | 麻豆精品91| 色婷婷午夜 | aaa毛片视频 | 亚洲精品h| 天天弄天天干 | 国产美女主播精品一区二区三区 | 国产麻豆视频网站 | 欧美aⅴ在线观看 | 精久久久久| 999在线视频 | 久久国产成人午夜av影院潦草 | 在线视频久 | 国产手机在线播放 | 久久国产精品精品国产色婷婷 | 蜜臀av性久久久久蜜臀av | 欧美日韩免费在线视频 | 日本久久综合视频 | 在线视频1卡二卡三卡 | 日韩精品视频在线观看网址 | 日本不卡123 | 国产精品久久久久久久电影 | 久久久久国产a免费观看rela | 精品高清美女精品国产区 | 国产亚洲成人网 | 91av视频| 综合久久影院 | 91理论片午午伦夜理片久久 | 日日夜夜网 | 高清国产午夜精品久久久久久 | 天天综合网国产 | www.在线看片.com | 国产高清黄 | a级片久久久| 一区二区视频在线免费观看 | 麻豆视频一区 | 综合网色 | 久久草草热国产精品直播 | 久久综合亚洲鲁鲁五月久久 | 天天干天天射天天操 | 婷婷激情综合五月天 | 国产精品普通话 | 色婷婷精品大在线视频 | 日韩电影一区二区在线观看 | 欧美激情精品一区 | 久久国产精品一区二区三区四区 | 日韩免费大片 | 精品999 | 久草9视频| 99热在线网站 | 国产成人777777 | 啪啪动态视频 | 一区二区三区视频在线 | 91精品免费看 | 日本视频精品 | 99热在线观看免费 | 五月天综合色激情 | 国内精品国产三级国产aⅴ久 | 免费黄av | 91亚色视频在线观看 | 在线播放日韩av | 久久精品福利 | 丁香婷婷激情网 | 九七视频在线 | 欧美va日韩va | 欧美日韩在线观看不卡 | 日日狠狠 | 丁香六月婷婷综合 | 精品福利视频在线 | 国产黄网站在线观看 | 香蕉影视app | 波多野结衣精品在线 | 夜夜躁天天躁很躁波 | 日韩专区在线播放 | 欧美人交a欧美精品 | 天堂在线视频中文网 | 亚洲国产欧美在线人成大黄瓜 | 免费欧美精品 | 久久精品麻豆 | 国产在线91在线电影 | 欧美美女激情18p | 久久精品在线免费观看 | 久久久久久久国产精品 | 国产高清不卡 | 亚洲精品美女在线观看播放 | 中文字幕在线观看2018 | av在线超碰 | 国产一级h| 国内久久久久 | 人人草在线观看 | 波多野结衣网址 | 久久一级电影 | 国产成人精品国内自产拍免费看 | 中文字幕九九 | 久久综合婷婷 | 亚洲一二三在线 | 一本—道久久a久久精品蜜桃 | 久草在线视频免赞 | www.狠狠 | 久久综合狠狠综合久久激情 | 国产视频91在线 | www黄在线 | 久久99免费| 欧美人交a欧美精品 | 日本精品中文字幕在线观看 | 久久久国产精品视频 | 色婷婷天天干 | 欧美久久久久久久久中文字幕 | 91精品国产91久久久久久三级 | 91中文字幕在线视频 | 亚洲精品小视频在线观看 | 国产免费精彩视频 | 国产精品久久免费看 | 午夜精品久久久久99热app | 亚洲日本中文字幕在线观看 | 天天综合网国产 | 伊人亚洲精品 | 色久av| 人人藻人人澡人人爽 | 日本韩国在线不卡 | 人人爽人人爽人人爽人人爽 | 97色婷婷人人爽人人 | 麻豆久久一区二区 | 久久久久久久久久免费 | 久久a v视频 | 亚洲美女视频在线 | av在线观 | 国产一级a毛片视频爆浆 | av电影免费在线播放 | 精品久久久久久亚洲综合网站 | 久久视频6| 在线成人观看 | 国产一区在线播放 | 玖玖在线免费视频 | 色婷婷福利视频 | 国产精品成人一区二区三区吃奶 | 国产男女爽爽爽免费视频 | 亚洲综合色视频在线观看 | 国产成人一二三 | 青青草国产成人99久久 | 中文字幕日本特黄aa毛片 | 天堂av色婷婷一区二区三区 | 99精品在线免费 | 最新日韩在线观看 | 欧美性性网 | 国内精品视频久久 | 日日麻批40分钟视频免费观看 | 国产精品久久久久av | 欧美一级性生活视频 | 亚洲午夜精品久久久久久久久久久久 | 国产伦理精品一区二区 | 88av网站 | 天天做日日做天天爽视频免费 | 99视频精品 | 99视频精品全部免费 在线 | 久久激情电影 | 亚洲首页 | 亚洲美女精品 | 69视频永久免费观看 | 午夜精品视频一区二区三区在线看 | 午夜婷婷网 | 91视频在线 | 九九免费观看视频 | 国产成人三级在线观看 | 99精品在线免费在线观看 | 亚洲国产精品久久久久婷婷884 | av色综合| 亚洲成人高清在线 | 国产又粗又猛又爽又黄的视频免费 | 青青久草在线视频 | 黄色1级大片 | 麻豆播放 | 色综合久久综合中文综合网 | 精品久久久久久久久久 | 久久免费试看 | 又色又爽的网站 | a一片一级 | 国产精品2020 | 国产精品不卡在线播放 | 果冻av在线 | 日日爱影视 | 亚洲国产视频a | 91精品一区二区三区蜜桃 | 最新日韩视频在线观看 | 一级黄色片在线播放 | 91国内在线视频 | 日韩中文字幕在线看 | 久久精品草 | 99久久精品免费看国产麻豆 | 人人澡人人模 | 亚洲精品综合在线 | 久久久福利 | 久久av观看| 天天干天天射天天插 | 国产成人av网址 | 中文不卡视频 | 婷婷综合久久 | 久久久久久久久毛片精品 | 免费人成网ww44kk44 | 五月天色婷婷丁香 | 在线成人高清电影 | 天天弄天天干 | 麻豆一二| 九九在线视频 | 亚洲九九精品 | 成人黄色小说网 | 九九久久成人 | 日日干天天 | 国产福利资源 | 在线观看视频黄色 | 天干啦夜天干天干在线线 | 天天综合婷婷 | 国产一二三精品 | 欧美性极品xxxx娇小 | 国产一区二区免费在线观看 | 国产黄色片久久 | 亚洲aⅴ乱码精品成人区 | 久久久久久久久国产 | 91超级碰碰 | 极品国产91在线网站 | 天天色天天操天天爽 | 玖玖视频 | 久久国产精品免费观看 | 日本福利视频在线 | 91桃色在线观看视频 | 在线亚洲人成电影网站色www | 综合色在线 | 久草青青在线观看 | 精品久久久久国产免费第一页 | 91丨九色丨国产在线 | 精品一区二区影视 | 久久狠狠一本精品综合网 | 天天操夜夜想 | 一级黄色a视频 | 99视频免费观看 | 中文在线字幕免费观看 | 国产91影视 | 999电影免费在线观看 | 青青河边草观看完整版高清 | 在线免费高清一区二区三区 | 四虎成人精品永久免费av | 成人网看片 | 久久久久久久18 | 国产精品麻豆三级一区视频 | 狠狠色丁香婷综合久久 | 免费成人av网站 | 精品美女在线观看 | 免费黄色在线 | 91一区啪爱嗯打偷拍欧美 | 国产高清在线不卡 | av成人黄色| 久久伊人爱 | h久久| 免费午夜av| 国产黑丝一区二区 | 精品国产一二三 | 久久手机在线视频 | 97国产情侣爱久久免费观看 | 黄色三级网站在线观看 | 五月婷婷激情五月 | 久久亚洲欧美日韩精品专区 | 国产在线观看xxx | 久久综合婷婷 | 日韩国产欧美在线播放 | 日韩中文字幕免费看 | 色网站在线看 | 欧美综合色 | 五月婷婷欧美视频 | 99精品视频观看 | 亚洲乱码在线 | 国产一二区在线观看 | 伊人狠狠| 在线播放国产一区二区三区 | 久久66热这里只有精品 | av动图| 国产91精品看黄网站 | 91爱爱中文字幕 | 国产情侣一区 | 天天射天天做 | 亚洲视频每日更新 | 国产成人一区二区三区久久精品 | 中文字幕丝袜美腿 | 男女视频久久久 | 91福利国产在线观看 | 国产尤物在线 | 亚洲精品乱码久久久久v最新版 | av免费网站在线观看 | 欧美va日韩va | 成在人线av| 国产成人精品福利 | 久久亚洲精品电影 | 欧美日韩精品在线观看视频 | 久久影院亚洲 | 国产精品成人一区二区三区吃奶 | 久久99深爱久久99精品 | www.久久免费 | av一级片在线观看 | 2019免费中文字幕 | 九九热免费观看 | 久久久免费av | 亚洲精品高清在线 | 色香网| 国产一区二区在线免费播放 | 国产精品九九热 | 色九九在线 | 久久久久久久亚洲精品 | 在线播放日韩av | 欧美另类高清 | 狠狠撸电影 | 国产日韩欧美在线观看 | 又爽又黄又刺激的视频 | 成人久久视频 | 在线免费观看黄网站 | 亚洲精品中文字幕在线 | 国产精品久久影院 | 国产精品免费高清 | 九九热在线视频免费观看 | 日本在线观看一区 | 久久精品欧美一区二区三区麻豆 | 在线免费观看黄色 | 久久观看免费视频 | 日日干av| 狠狠色免费 | 成人aⅴ视频 | 久久av网址 | 成人网在线免费视频 | 久久精品视频在线观看免费 | 丁香五婷| 91麻豆精品| 一级黄色片网站 | 一区二区精品在线观看 | 国产乱对白刺激视频在线观看女王 | 天天综合人人 | 丝袜美腿av | 色婷婷av在线 | 337p日本欧洲亚洲大胆裸体艺术 | 欧美精品国产综合久久 | 久久高清免费观看 | 久久免费视频3 | 免费观看一级视频 | 午夜18视频在线观看 | 一区二区三区精品在线 | 香蕉视频导航 | 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 欧美日韩视频在线 | 国内精品视频在线播放 | 少妇按摩av | 久草电影免费在线观看 | 久草av在线播放 | 国产精品一区二区久久国产 | 国产精品99在线播放 | 在线91播放| 91色国产在线 | 久久电影色 | av在线免费观看不卡 | 国产精品久久久久久久久软件 | av成人在线电影 | av高清不卡| 四虎欧美 | 国产午夜精品一区二区三区四区 | 日韩三级视频在线观看 | 午夜精品一区二区三区视频免费看 | 九九久久在线看 | av免费电影在线观看 | 亚洲国产精品成人精品 | 国产又粗又硬又爽视频 | 永久免费精品视频 | 黄色精品在线看 | 黄色三级免费片 | 黄色av大片 | 婷婷久操| 91桃色国产在线播放 | 91视频免费国产 | 粉嫩av一区二区三区四区五区 | 91喷水| 91精品国产成 | 国产日产精品一区二区三区四区 | 亚洲激情电影在线 | 久久激情小视频 | 婷婷福利影院 | 成人毛片a | 免费观看视频黄 | 色com| 中文字幕 在线看 | 日韩国产精品久久久久久亚洲 | 狠狠躁夜夜a产精品视频 | 91精品1区2区 | 99久久精| 免费看黄视频 | 99久久精品久久久久久动态片 | 深夜福利视频在线观看 | 麻豆激情电影 | 91禁在线观看 | av不卡在线看 | 国产成人av综合色 | 国产色网 | 黄色最新网址 | 亚洲国产成人久久综合 | 超碰在线观看av.com | 日韩精品中文字幕一区二区 | 日韩精品免费一区 | 91久久偷偷做嫩草影院 | 97视频网站 | 亚洲一区美女视频在线观看免费 | av免费电影在线 | 久久久久久久久久久免费av | 98久久 | www.在线观看av | 欧美天堂视频在线 | 日韩中文字幕在线看 | 国产日韩精品一区二区三区 | 日韩久久久久久久久久久久 | 国产黄网站在线观看 | 狠狠干网址 | 中文字幕视频一区二区 | 久久国产精品99国产精 | 亚洲视频免费 | 999视频在线播放 | 亚洲在线看 | 亚洲五月激情 | 中文字幕在线观看第一页 | 久久歪歪 | 一本一本久久a久久精品综合 | 久久久久久久久久伊人 | 国产精品999久久久 久产久精国产品 | 免费日韩一区二区三区 | 国产一级黄色片免费看 | 99久久综合精品五月天 | 久草视频免费 | 久久国产精品免费一区二区三区 | 视频一区视频二区在线观看 | 国产精品久久久久久久久婷婷 | 在线亚洲成人 | 在线观看www.| 中文字幕a∨在线乱码免费看 | 日韩精品一区二区三区高清免费 | 全久久久久久久久久久电影 | 国产成人精品一区二区三区在线 | 亚洲清纯国产 | 欧美精品久久久久久久免费 | 91九色精品女同系列 | 久久久片 | 不卡电影免费在线播放一区 | 九九精品无码 | 超碰97人人射妻 | 午夜视频一区二区 | 欧美日bb | 亚洲精品字幕 | 蜜臀久久99精品久久久无需会员 | 成人免费 在线播放 | 高清有码中文字幕 | 亚洲人人精品 | 日韩三级在线 | 婷婷视频在线 | 亚洲国产精品va在线 | 91精品久久久久久久久久入口 | 日本中文字幕系列 | 黄色免费网站 | 伊人伊成久久人综合网小说 | 黄色av电影在线观看 | 视频在线99 | 亚洲精品合集 | 日韩网站在线免费观看 | sesese图片 | 免费观看v片在线观看 | 久久毛片高清国产 | 最近日韩中文字幕中文 | 四虎在线免费观看 | 最近2019年日本中文免费字幕 | 欧美伦理一区二区三区 | 13日本xxxxxⅹxxx20 | 夜夜骑天天操 | 欧美一区二区在线 | 亚洲国产精品视频在线观看 | 欧美日韩国产精品一区二区 | 综合激情婷婷 | 日本久久久久久久久久 | 国产性xxxx | 色吧av色av | 国产精品一区二区免费看 | 500部大龄熟乱视频使用方法 | 日韩精品一区二区三区第95 | 中文字幕在线观看第三页 | 开心激情五月网 | 国产成人久久精品77777综合 | 91视频一8mav | 天天射综合 | 一本一本久久a久久精品综合妖精 | 国产中的精品av小宝探花 | 91传媒免费观看 | 91香蕉视频在线下载 | 国产精品18久久久久久不卡孕妇 | 久久伦理电影 | 在线成人av | 久久久久伊人 | 黄色国产在线观看 | 欧美黄网站 | 黄污视频网站大全 | 狠狠的干狠狠的操 | 日本黄色免费电影网站 | 天天操天天弄 | 97成人在线 | 色综合久久久久综合99 | 久久成年人网站 | 欧美激情精品久久久久久 | 一区视频在线 | 激情丁香久久 | 亚洲精品久久在线 | 少妇bbw搡bbbb搡bbb | 日韩二三区 | 99视频黄 | 久久九九久久九九 | 超碰个人在线 | 国产区在线 | 99久久综合精品五月天 | 91女子私密保健养生少妇 | 天天综合导航 | 91欧美在线| 久草精品电影 | 五月婷在线观看 | 懂色av懂色av粉嫩av分享吧 | 在线免费高清视频 | 天天艹 | 久久婷婷五月综合色丁香 | 国产精品亚洲综合久久 | 国产精品18久久久久久首页狼 | 成人中文字幕+乱码+中文字幕 | 中文字幕成人一区 | 国产色视频一区 | 国产精品不卡在线播放 | 中文字幕精品在线 | 中文字幕日韩伦理 | 99久久精品国产欧美主题曲 | 国产人成免费视频 | 久久视频在线免费观看 | 日韩一区二区在线免费观看 | 日韩欧三级 | 久久情侣偷拍 | 国产成人av综合色 | a v在线视频 | 日韩 国产| 97精品一区二区三区 | 欧美日韩精品在线观看 | 日韩av在线影视 | 中文字幕日韩伦理 | 色综合夜色一区 | 五月婷婷电影网 | 成人av资源网站 | 日本三级不卡 | 97色婷婷成人综合在线观看 | 日韩色一区二区三区 | 99视频在线精品国自产拍免费观看 | 美女精品在线 | 国产综合在线观看视频 | 96久久久 | 美女网站在线免费观看 | 黄色天堂在线观看 | 91在线免费公开视频 | 天天精品视频 | 成人国产精品 | 一二三区在线 | 日批视频在线 | 亚洲精品在线观 | 国产一级免费在线观看 | www.亚洲黄| 91精品国产99久久久久 | 日韩二区在线播放 | 麻花豆传媒mv在线观看网站 | 成人播放器 | 国产精品女教师 | 亚洲欧美精品一区 | 三级在线国产 | 免费激情在线电影 | 日韩视频免费播放 | 亚洲欧美日韩一二三区 | 69xxxx欧美| 欧美老人xxxx18 | 久草精品视频 | 亚洲麻豆精品 | 91精品中文字幕 | 久久久国产毛片 | 在线观看mv的中文字幕网站 | 国产真实精品久久二三区 | 日本aaaa级毛片在线看 | 人人超碰在线 | 五月婷婷亚洲 | 99精品免费久久久久久日本 | 国产精品嫩草69影院 | 国内精品久久久久国产 | 日韩在线中文字幕视频 | 激情九九| av超碰在线观看 | 久久av黄色| 在线高清av| 久久婷亚洲五月一区天天躁 | 在线97| 成人免费视频播放 | 91精品国产乱码久久桃 | 999一区二区三区 | 超碰97免费观看 | 亚洲激情一区二区三区 | 久草在线精品观看 | 国产黄色大全 | 91完整版 | 亚洲日本va在线观看 | 人人爽人人片 | 91视频网址入口 | 亚洲欧洲精品一区二区 | 日韩免费三区 | 97视频人人澡人人爽 | 久久久亚洲国产精品麻豆综合天堂 | 国产一在线精品一区在线观看 | 黄污网 | 中文有码在线 | 久久久久成人精品免费播放动漫 | 香蕉网在线播放 | 成年人网站免费在线观看 | 日韩大片在线看 | 亚洲综合视频在线观看 | 摸阴视频 | 成人一区电影 | 在线播放你懂 | 欧美日韩中文在线视频 | 麻豆91在线观看 | 日本三级中文字幕在线观看 | 日韩剧情 | 婷婷激情站 | 丁香六月欧美 | 精品亚洲一区二区 | 在线观看自拍 | av在线一 | 91福利社在线观看 | 国产一区不卡在线 | 黄污视频大全 | 久久久福利| 日韩视频免费观看高清完整版在线 | 国产录像在线观看 | 久久超碰免费 | 久久九九精品 | 超碰公开在线 | 偷拍福利视频一区二区三区 | 欧美色综合久久 | 亚洲视频久久久 | 国产亚洲激情视频在线 | 亚洲在线视频播放 | 在线看国产视频 | 婷婷深爱激情 | 国产一线二线三线性视频 | 亚洲视频一区二区三区在线观看 | 最新av电影网站 | 91爱看片 | 最新一区二区三区 | av成人免费在线看 | 91精品视频在线 | 欧美巨大荫蒂茸毛毛人妖 | 国产视频精品网 | 欧美精品一级视频 | 日日操夜| 天天激情天天干 | 在线观看午夜av | av短片在线 | 日韩精品一区二区三区第95 | 狠狠色丁香婷婷综合 | 不卡视频在线看 | 精品免费久久久久 | 日本在线免费看 | 久草视频免费看 | 天天色草 | 国产视频导航 | 久久乐九色婷婷综合色狠狠182 | 亚洲视频高清 | 五月天婷婷在线观看视频 | 亚欧洲精品视频在线观看 | 久久久精选 | www.久久com| 99久久精品免费一区 | 免费看污网站 | 中文字幕av网站 | 久久免费观看少妇a级毛片 久久久久成人免费 | 综合激情av| 国产96视频| 一区二区三区四区精品视频 | 日韩在线视频观看 | 夜夜躁狠狠躁 | 久久毛片网 | 欧美性成人 | 日韩欧美精品免费 | 久久久久久国产精品999 | 亚洲一级片在线看 | 欧美久久成人 | 久久久精品国产免费观看一区二区 | 久久婷综合| 日韩精品无码一区二区三区 | 91| 成人理论电影 | 国产精品久久久一区二区 | 2020天天干夜夜爽 | 久久艹久久 | 狠日日| 五月婷婷在线观看 | 精品高清美女精品国产区 | 美女免费视频一区二区 | 四虎影视www| 国产 日韩 中文字幕 | www天天干com| 亚州日韩中文字幕 | 天天操夜操视频 | wwwww.国产| 午夜10000 | 综合久久久久久久久 | 亚州五月| 黄色特级片 | 97天堂网| 亚洲精品字幕在线 | 久久久精品视频成人 | 一级免费观看 | 色婷婷精品大在线视频 | 九色视频自拍 | 69久久久久久久 | 中文字幕91 | 日韩一区二区三区不卡 | 波多野结衣在线视频一区 | 久久黄色免费视频 | 久久国产精品一二三区 | 国产区 在线 | 国产精品免费人成网站 | 中文字幕在线播放日韩 | 国产91精品看黄网站 | 在线观看国产成人av片 | 波多野结衣在线视频免费观看 | 男女男视频 | 美女视频黄免费网站 | 欧美一级免费黄色片 | 操操日 | 五月激情五月激情 | 西西444www | 欧洲一区精品 | 亚洲日本欧美 | 久久精品久久精品久久 | 日韩精品中文字幕在线 | 天堂视频中文在线 | 尤物97国产精品久久精品国产 | 日韩在线不卡视频 | 综合色站导航 | 美女免费黄视频网站 | 中文字幕国产精品一区二区 | 狠狠狠狠狠狠天天爱 | 综合色狠狠 | 狠狠干在线播放 | 成人动漫一区二区三区 | 亚洲欧美怡红院 | 免费a一级 | 日韩在线观看你懂得 | 亚洲成色777777在线观看影院 | 美女天天操 | 国产成人精品亚洲 | 日韩成人一级大片 | 久久综合九九 | 国产福利中文字幕 | 99精品国产免费久久久久久下载 | 日本在线精品视频 | 9热精品 | 日韩欧美黄色网址 | 久草视频首页 | 国产精品理论片 | 在线观看视频免费播放 | 日本精品在线 | 中文字幕在线观看第一页 | 激情视频免费观看 | 日韩a在线| 久久久久久久99 | 大胆欧美gogo免费视频一二区 | 精品 激情| 国产又粗又长的视频 | av看片网址 | 久久影视一区二区 | 久草新在线 | 欧美有色 | 91自拍91 | 在线国产不卡 | 玖玖在线看| 久久综合免费视频 | 一区二区三区精品久久久 | 亚洲国产中文字幕在线视频综合 | 久久免费福利 | 91在线观看高清 | 日韩在线激情 | 色婷婷婷 | 国产精品亚洲片在线播放 | 亚洲黄色小说网 | 81精品国产乱码久久久久久 | 99精品视频在线观看免费 | 亚洲精品国产电影 | 91麻豆精品国产91久久久无限制版 | 五月婷婷综合激情网 | 欧美日韩视频在线 | 成年人免费av | 中文 一区二区 | 亚洲精品综合久久 | www91在线观看 | 国产精品v a免费视频 | 93久久精品日日躁夜夜躁欧美 | 不卡电影一区二区三区 | 97天天干| 亚洲 中文字幕av | 黄色91在线 | 国产免费亚洲高清 | 中国成人一区 | 91福利视频一区 | 91桃色免费观看 | 911在线| 黄色小说免费在线观看 | 日韩色爱 | 在线欧美a| 色视频 在线 | 国产欧美在线一区 | 国产九九九视频 | 97网站| 99久久精品午夜一区二区小说 | 午夜久久福利视频 | 国产一级久久久 | 欧美另类网站 | 国产一区二区在线免费观看 | 最新av观看 | 国产亚洲精品av | 久久久久久久久久久久久国产精品 | 97在线观看免费高清完整版在线观看 | 99热精品在线观看 | 成人午夜电影免费在线观看 | 国产99久久精品一区二区永久免费 | 天天爽夜夜爽人人爽一区二区 | 人人爱人人舔 | 9幺看片 | 在线免费观看的av | 日韩三级在线 | 欧美91在线 | 国产亚洲人 | 久av在线| 九九综合九九 | 国产伦精品一区二区三区在线 | 99福利片| 人人爱在线视频 | 碰超在线97人人 | 国产精品久久久免费 | 一色av| 97精品一区| 天天操天天射天天操 | 亚洲国产合集 | 一区二区三区四区五区在线视频 | 国产成人资源 | 超碰.com| 中文资源在线官网 | 天天拍夜夜拍 | 日本中文字幕一二区观 | av丁香 | 国产欧美久久久精品影院 | 国产区精品视频 | 欧美性护士 | 亚洲精品欧美精品 | 激情电影在线观看 | 去看片| 色婷婷成人 | 久久免费视频网站 | 天天爽天天爽 | 91av短视频 | 97精品国产97久久久久久免费 | 婷婷色综合色 | 成人综合婷婷国产精品久久免费 | 日本午夜免费福利视频 | 国产在线更新 | 射射射综合网 | 精品黄色视 | 成人国产电影在线观看 | 久久这里只有精品久久 | 成人高清在线 | 一区二区三区 中文字幕 | 欧美一级在线 | 一区在线免费观看 | 精品视频资源站 | 亚洲有 在线 | 99久热精品| 在线一区av | 免费在线h| 久久99热这里只有精品国产 | 性色av香蕉一区二区 | 成人免费在线网 | 国产九九热 | 片黄色毛片黄色毛片 | 国产91精品看黄网站在线观看动漫 | 日韩免费在线视频 | 欧美地下肉体性派对 | 91av在线视频播放 | 中文字幕超清在线免费 | av在线专区 | 狠狠色噜噜狠狠狠狠 | 亚洲国产欧美在线看片xxoo | 国产成人一区三区 | 国产精品永久久久久久久www | 久久精品欧美视频 | 精品二区视频 | 狠狠狠操 | 黄色官网在线观看 | 中国一级片视频 | 黄色一级影院 | 久久久黄色av | 黄色影院在线免费观看 | 免费在线国产视频 | 99久久99久久精品 | 久久久久久综合 | 97福利视频 | 中文字幕xxxx | 国产 日韩 欧美 中文 在线播放 | 久草网免费 | 午夜国产影院 | 97超碰中文字幕 | 亚洲狠狠婷婷综合久久久 | 国产高清在线a视频大全 | 亚洲日本一区二区在线 | 色综合天天综合在线视频 | 中文字幕av有码 | 色综合久久中文综合久久牛 | 国产女人免费看a级丨片 | 日韩在线免费视频观看 | 欧美,日韩| 天堂久久电影网 | 99久久99久久精品国产片果冰 | 国产偷在线 | 成片免费观看视频 | 国产97色 | 亚洲爱爱视频 | 色婷婷精品大在线视频 | 欧美精品亚洲精品日韩精品 | 久久av伊人 | 97在线影院 | 缴情综合网五月天 | 久久免费一| 五月情婷婷 | 日本精品一区二区三区在线观看 | 天堂av在线免费 | 色先锋av资源中文字幕 | 日韩av一区二区三区在线观看 | 免费高清男女打扑克视频 | 国产精品久久艹 | 黄色免费高清视频 | 精品久久91 | 国产又粗又猛又黄又爽的视频 | 国产高清一区二区 | 亚洲精品国产精品久久99 | 在线午夜电影神马影院 | 成人在线网站观看 | 亚洲视频观看 | 九九精品视频在线观看 | 久久精品中文字幕一区二区三区 | 波多野结衣一区三区 | 日韩av在线免费播放 | 黄视频网站大全 | 欧美日韩视频在线观看免费 | 97在线精品 | 亚洲色图激情文学 | 在线电影中文字幕 | 在线一级片 | 日韩免费视频在线观看 | 免费试看一区 | 天天干天天操天天干 | 久久成人国产精品入口 | 久久精品毛片基地 | 久久久免费少妇 | 天天干天天在线 | 欧美午夜精品久久久久久孕妇 | 亚洲精品xxxx | 欧美精品在线观看 | 国产一级做a| 色综合天天在线 | 亚洲精品视频在线观看免费 | 麻豆高清免费国产一区 | 欧美日韩大片在线观看 | 99久久久久久久 | 日本中文在线观看 | 99精品久久99久久久久 | 日韩免费高清在线观看 |