精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

聊聊分布式一致性算法協議 Paxos

開發
本文我們針對Paxos算法是什么、它的特性以及算法的具體推導過程做了詳細的闡述。

Google的粗粒度鎖服務Chubby的設計開發者Burrows曾經說過:所有一致性協議本質上要么是Paxos要么是其變體。

網上有很多講解Paxos算法的文章,但是質量層次不齊。今天筆者帶大家深入聊一下Paxos。

Paxos是什么?

Paxos算法是基于消息傳遞且具有高度容錯特性的一致性算法,是目前公認的解決分布式一致性問題最有效的算法之一。

Paxos算法是Lamport宗師提出的一種基于消息傳遞的分布式一致性算法,使其獲得2013年圖靈獎。

自Paxos問世以來就持續壟斷了分布式一致性算法,Paxos這個名詞幾乎等同于分布式一致性。

Google的很多大型分布式系統都采用了Paxos算法來解決分布式一致性問題,如Chubby、Megastore以及Spanner等。開源的ZooKeeper,以及MySQL 5.7推出的用來取代傳統的主從復制的MySQL Group Replication等紛紛采用Paxos算法解決分布式一致性問題。

但是它也有兩個明顯的缺點:

  • 難以理解
  • 在工程是實現上比較復雜。

問題產生的背景

在常見的分布式系統中,總會發生諸如機器宕機或網絡異常(包括消息的延遲、丟失、重復、亂序,還有網絡分區)等情況。Paxos算法需要解決的問題就是如何在一個可能發生上述異常的分布式系統中,快速且正確地在集群內部對某個數據的值達成一致,并且保證不論發生以上任何異常,都不會破壞整個系統的一致性。

這里某個數據的值并不只是狹義上的某個數,它可以是一條日志,也可以是一條命令(command)。根據應用場景不同,某個數據的值有不同的含義。

圖片

相關概念

在Paxos算法中,有三種角色:

  • Proposer (提案者)
  • Acceptor (人大代表)
  • Learners (廣大群眾)

需要注意的是,在具體的算法實現過程中,并不是一個進程只能擔任其中一種角色,它有可能會同時充當多個。比如一個進程既是Proposer又是Acceptor還是Learner。

還有一個很重要的概念叫提案(Proposal)。最終要達成一致的value就在提案里。

這個提案包括什么呢?是僅僅包括一個信息數值嗎?到底是如何咱們繼續向下閱讀,目前咱們先認為僅僅是一個普普通通的value。

圖片

初次認識

Paxos算法過程和我國的立法過程是極其相似的(法律案的提出、法律案的審議、法律案的表決、法律的公布四個階段),所謂的提案就是新頒布法律。

Proposer (提案者)可以提出(propose)提案;Accoptor可以接受(accept)提案;如果某個提案被選定(chosen),那么該提案里的value就被選定了。

回到剛剛說的『對某個數據的值達成一致』,指的是Proposer、Acceptor、Learner都認為同一個value被選定(chosen)。那么,Proposer、Acceptor、Learner分別在什么情況下才能認為某個value被選定呢?

  • Proposer:只要Proposer發的提案被Acceptor接受(剛開始先認為只需要一個Acceptor接受即可,在推導過程中會發現需要半數以上的Acceptor同意才行),Proposer就認為該提案里的value被選定了。
  • Acceptor:只要Acceptor接受了某個提案,Acceptor就認為該提案里的value被選定了。
  • Learner:作為一個學習者,Acceptor告訴Learner哪個value被選定,Learner就認為那個value被選定。

問題描述

假設有一組可以提出(propose)value的進程集合(提案者團隊),一個一致性算法需要保證提出的這么多value中,僅僅只有一個相同的value被選定(chosen)。也就是說要么沒有value被提出,只要提出了value并且被選定,那么大家最終學習到的value必須是一致的。對于一致性算法,安全性(safaty)要求如下:

  • 只有被提出的value才能被選定。
  • 只有一個value被選定。
  • 如果某個進程認為某個value被選定了,那么這個value必須是真的被選定的那個。

Paxos的目標:保證最終有一個value會被選定,當value被選定后,進程最終也能獲取到被選定的value。

俗話說的好,哪里有需求,哪里就會出現糟糕的問題。如果假設不同角色之間可以通過發送消息來進行通信,那么:

  • 每個角色以各自任意的速度進行通信執行,在這個過程中可能會因為各種原因出錯而導致執行停止或重啟。當一個value被選定之后,因為故障原因才恢復正常的角色因為失去了某些重要的信息,導致它們無法確定被選定的值。
  • 消息在傳遞過程中可能出現任意時長的延遲,可能會重復,也可能丟失。但是消息不會被損壞,即消息內容不會被篡改(拜占庭將軍問題)。

以上都是可能會遇到的問題,要怎么解決???

推導過程

最簡單的方案——只有一個Acceptor

假設只有一個Acceptor(可以有多個Proposer),只要Acceptor接受它收到的第一個提案,則該提案被選定,該提案里的value就是被選定的value。這樣就保證只有一個value會被選定。

但是,如果這個唯一的Acceptor宕機了,那么整個系統就無法工作了!

因此,一個Acceptor是不可行的,必須要有多個Acceptor!

圖片

多個Acceptor

當有多個Acceptor的時候,如何保證在多個Proposer和多個Acceptor的情況下選定一個value呢?

大家可以自己先進行思考。

首先,我們的最終目標是無論有多少Proposer提出提案,有且僅有一個value被選定。

那么,我們可以先定義一個約束:

P1:一個Acceptor必須接受它收到的第一個提案。

但是,這樣又會出現其它的問題:如果每個Proposer所提出的提案value是不同的,并且將提案發送給不同的Acceptor。根據P1約束,每個Acceptor都接受它收到的第一個提案,就會出現不同value被選定的情況,出現了不一致。

圖片

剛剛是因為『一個提案只要被一個Acceptor接受,則該提案的value就被選定了』才導致了出現上面不一致的問題。因此,我們需要加一個規定:

規定:一個提案被選定需要被半數以上的Acceptor接受。

一個提案被半數以上接受,說明『一個Acceptor必須能夠接受不止一個提案!』,不然可能導致最終沒有value被選定。比如上圖的情況。v1、v2、v3都沒有被選定,因為它們都只被一個Acceptor的接受,并沒有被超過半數以上的Acceptor接受。

最開始將【提案 = value】已經無法滿足現在的需求,因為當一個Proposer發送多個提案到一個Acceptor的時候,需要使用一個編號來區分被提出的順序。現在【提案=提案編號+value】。

雖然允許多個提案被選定,但必須保證所有被選定的提案都具有相同的value值。否則又會出現不一致。

P2:如果某個value為v的提案被選定了,那么每個編號更高的被選定提案的value必須也是v。

一個提案只有被Acceptor接受才可能被選定,因此我們可以把P2約束改寫成對Acceptor接受的提案的約束P2a。

P2a:如果某個value為v的提案被選定了,那么每個編號更高的被Acceptor接受的提案的value必須也是v。

只要滿足了P2a,就能滿足P2。

但是,考慮如下的情況:以立法過程為背景,假設總的有5個人大代表(Acceptor)。

人民法院(Proposer2)提出[M1,V1]的提案,人大代表2-5號(半數以上)均接受了該提案,于是對于人大代表2-5號和人民法院來講,它們都認為V1提案是被選定的。此時,人大代表1在辦完其它事務之后也參與到其中(之前人大代表1沒有收到過任何提案),此時最高人民檢察院(另一個提案者Proposer1)向人大代表1發送了[M2,V2]的提案(V2≠V1且M2>M1),對于人大代表1來講,這是它收到的第一個提案。根據P1(一個Acceptor必須接受它收到的第一個提案。),人大代表1必須接受該提案!同時人大代表1認為V2被選定。這就出現了兩個問題:

  • 人大代表1認為V2被選定,人大代表2-5和人民法院認為V1被選定。出現了不一致。
  • V1被選定了,但是編號更高的被人大代表1接受的提案[M2,V2]的value為V2,且V2≠V1。這就跟P2a(如果某個value為v的提案被選定了,那么每個編號更高的被Acceptor接受的提案的value必須也是v)矛盾了。

圖片

所以,我們要對P2a約束進行加強!

P2a是對Acceptor接受的提案約束,但其實提案是Proposer提出來的,所有我們可以對Proposer提出的提案進行約束。得到P2b:

P2b:如果某個value為v的提案被選定了,那么之后任何Proposer提出的編號更高的提案的value必須也是v。

那么,如何確保在某個value為v的提案被選定后,Proposer提出的編號更高的提案的value都是v呢?

只要滿足P2c即可:

P2c:對于任意的N和V,如果提案[N, V]被提出,那么存在一個半數以上的Acceptor組成的集合S,滿足以下兩個條件中的任意一個:

  • S中每個Acceptor都沒有接受過編號小于N的提案。
  • S中Acceptor接受過的最大編號的提案的value為V。

Proposer生成提案

為了滿足P2b,這里有個比較重要的思想:Proposer生成提案之前,應該先去『學習』已經被選定或者可能被選定的value,然后以該value作為自己提出的提案的value。如果沒有value被選定,Proposer才可以自己決定value的值。這樣才能達成一致。這個學習的階段是通過一個『Prepare請求』實現的。

于是我們得到了如下的提案生成算法:

(1) Proposer選擇一個新的提案編號N,然后向某個Acceptor集合(半數以上)發送請求,要求該集合中的每個Acceptor做出如下響應(response):

  • 向Proposer承諾保證不再接受任何編號小于N的提案。
  • 如果Acceptor已經接受過提案,那么就向Proposer響應已經接受過的編號小于N的最大編號的提案。

我們將該請求稱為編號為N的Prepare請求。

(2) 如果Proposer收到了半數以上的Acceptor的響應,那么它就可以生成編號為N,Value為V的提案[N,V]。這里的V是所有的響應中編號最大的提案的Value。如果所有的響應中都沒有提案,那 么此時V就可以由Proposer自己選擇(一般為當前提案)。

生成提案后,Proposer將該提案發送給半數以上的Acceptor集合,并期望這些Acceptor能接受該提案。我們稱該請求為Accept請求。(注意:此時接受Accept請求的Acceptor集合不一定是之前響應Prepare請求的Acceptor集合)

Acceptor接受提案

Acceptor可以忽略任何請求(包括Prepare請求和Accept請求)而不用擔心破壞算法的安全性。因此,我們這里要討論的是什么時候Acceptor可以響應一個請求。

我們對Acceptor接受提案給出如下約束:

P1a:一個Acceptor只要尚未響應過任何編號大于N的Prepare請求,那么他就可以接受這個編號為N的提案。

如果Acceptor收到一個編號為N的Prepare請求,在此之前它已經響應過編號大于N的Prepare請求。根據P1a,該Acceptor不可能接受編號為N的提案。因此,該Acceptor可以忽略編號為N的Prepare請求。當然,也可以回復一個error,讓Proposer盡早知道自己的提案不會被接受。

因此,一個Acceptor只需記住:

  • 已接受的編號最大的提案
  • 已響應的請求的最大編號。

Paxos算法描述

經過上面的推導,我們總結下Paxos算法的流程。

Paxos算法分為兩個階段。具體如下:

階段一:

  • Proposer選擇一個提案編號N,然后向半數以上的Acceptor發送編號為N的Prepare請求。
  • 如果一個Acceptor收到一個編號為N的Prepare請求,且N大于該Acceptor已經響應過的所有Prepare請求的編號,那么它就會將它已經接受過的編號最大的提案(如果有的話) 作為響應反饋給Proposer,同時該Acceptor承諾不再接受任何編號小于N的提案。

階段二:

  • 如果Proposer收到半數以上Acceptor對其發出的編號為N的Prepare請求的響應,那么它就會發送一個針對[N,V]提案的Accept請求給半數以上的Acceptor(和之前的Acceptor不一定相同)。注意:V就是收到的響應中編號最大的提案的value,如果響應中不包含任何提案,那么V就由Proposer自己決定。
  • 如果Acceptor收到一個針對編號為N的提案的Accept請求,只要該Acceptor沒有對編號大于N的Prepare請求做出過響應,它就接受該提案。

圖片

Learner學習被選定的value

Learner學習(獲取)被選定的value有如下三種方案:

方案一:

Acceptor接受到一個提案,就將該提案發送給所有Learners.

  • 優點:Learner能夠快速獲取被選定的value
  • 缺點:通信次數為M*N(M為提案數,N為Learner數)

方案二

Acceptor接受一個提案,就將提案發送給主Learner,主Learner再通知其它Learner

  • 優點:通信次數減少(M+N-1)(M為提案數,N為Learner數,M個提案發送給主Learner,然后主Learner通知N-1個Learner)
  • 缺點:單點故障問題(主Learner可能出現故障)

方案三

Acceptor接受一個提案,就將提案發送給Learner團,Learner團再通知其它Learner

  • 優點:解決了方案二單點故障問題,可靠性好
  • 缺點:實現復雜,網絡通信復雜度高

如何保證Paxos算法的活性

通過選取主Proposer,就可以保證Paxos算法的活性。通過選取主Proposer,并規定只有主Proposer才能提出議案。這樣一來只要主Proposer和過半的Acceptor能夠正常進行網絡通信,那么但凡主Proposer提出一個編號更高的提案,該提案終將會被批準,這樣通過選擇一個主Proposer,整套Paxos算法就能夠保持活性。至此,我們得到一個既能保證安全性,又能保證活性的分布式一致性算法——Paxos算法。

圖片

總結

到此,我們針對Paxos算法是什么、它的特性以及算法的具體推導過程做了詳細的闡述。Paxos算法是現在很多一致性算法的變體,非常值得我們學習。

責任編輯:趙寧寧 來源: 碼猿技術專欄
相關推薦

2024-11-28 10:56:55

2020-03-16 11:55:28

PaxosRaft協議

2019-10-11 23:27:19

分布式一致性算法開發

2020-10-28 11:15:24

EPaxos分布式性算法

2019-09-05 08:43:34

微服務分布式一致性數據共享

2020-05-11 10:30:57

2PC分布式協議

2021-11-22 16:30:30

分布式一致性分布式系統

2024-05-27 10:42:55

2017-09-21 10:59:36

分布式系統線性一致性測試

2021-07-28 08:39:25

分布式架構系統

2021-06-03 15:27:31

RaftSOFAJRaft

2022-11-10 07:49:09

hash算法代碼

2020-05-29 14:46:23

3PC協議分布式系統

2021-06-06 12:45:41

分布式CAPBASE

2017-09-22 12:08:01

數據庫分布式系統互聯網

2023-11-06 09:06:54

分布式一致性數據

2018-03-13 08:20:48

區塊鏈數據安全

2018-04-10 16:24:03

算法分布式一致性

2020-05-07 11:58:07

分布式系統架構

2021-06-16 08:33:02

分布式事務ACID
點贊
收藏

51CTO技術棧公眾號

色哟哟免费网站| 国产99久久久欧美黑人| 亚洲乱妇老熟女爽到高潮的片| 国产三线在线| 97精品国产露脸对白| 日产精品99久久久久久| 97成人资源站| 亚洲精品推荐| 欧美日韩国产小视频| 日韩精品免费一区| 九九在线视频| 国产成人综合亚洲网站| 26uuu亚洲国产精品| 色www亚洲国产阿娇yao| 加勒比色老久久爱综合网| 欧美日韩一区二区在线观看| 阿v天堂2018| 一级毛片视频在线| www成人在线观看| 91人成网站www| 麻豆成人免费视频| 亚洲五月婷婷| 精品国产一区二区三区四区在线观看| 日本xxxx免费| 免费视频观看成人| 一本到三区不卡视频| 欧美交换配乱吟粗大25p| 国产福利小视频在线| zzijzzij亚洲日本少妇熟睡| 成人在线中文字幕| 亚洲精品国产精品国自产网站按摩 | 亚洲aⅴ怡春院| 一本—道久久a久久精品蜜桃| 日韩国产福利| av在线不卡电影| 4444kk亚洲人成电影在线| 伊人免费在线观看| 久久中文字幕一区二区三区| 国产最新精品视频| www青青草原| 99精品一区| 中日韩美女免费视频网址在线观看 | 国产手机在线视频| 怡红院精品视频在线观看极品| 久久激情视频免费观看| 黄色国产在线播放| 精品久久影视| 一区二区亚洲欧洲国产日韩| 亚洲天堂视频一区| 伊人久久大香线蕉综合网站| 日韩成人黄色av| 国产激情第一页| 老牛精品亚洲成av人片| 亚洲精品一区二区三区99| 日批免费观看视频| 色悠久久久久综合先锋影音下载| 欧美日本在线看| 亚洲黄色av片| 久久99成人| 欧美va亚洲va香蕉在线| 国产精品欧美性爱| aaa国产精品| 欧美成人r级一区二区三区| 4438x全国最大成人| 亚洲午夜免费| 亚洲精品美女在线观看| 午夜一区二区三区免费| 国产成人精品一区二区免费看京 | 欧美日韩国产一二三| 欧美在线aaa| 精品国产一区二区三区2021| 日韩欧美国产精品| 免费黄色三级网站| 国产真实有声精品录音| 色偷偷888欧美精品久久久 | 亚洲乱码精品| 久久久久久久久久亚洲| 天堂а√在线中文在线新版| 免费国产亚洲视频| 96精品久久久久中文字幕| 亚洲精华国产精华精华液网站| 不卡av电影在线播放| 欧美中日韩免费视频| 毛片在线看网站| 亚洲图片欧美一区| 999香蕉视频| 亚洲国产aⅴ精品一区二区三区| 欧美一区二区播放| 毛茸茸多毛bbb毛多视频| 99久久久久国产精品| 欧美激情精品久久久久久蜜臀| 国产成人一区二区三区影院在线 | 天美一区二区三区| 女人抽搐喷水高潮国产精品| 在线观看91久久久久久| 久久网中文字幕| 丝袜美腿亚洲综合| 国产91一区二区三区| 国产一级在线| 亚洲一区二区三区在线看| 色综合av综合无码综合网站| 91麻豆精品国产综合久久久 | 精品欧美一区二区久久久伦 | 神马电影久久| 欧美高清电影在线看| 国产污视频网站| 福利一区二区在线| 一级二级三级欧美| 中国色在线日|韩| 日韩欧美在线综合网| 亚洲精品色午夜无码专区日韩| 欧美一区激情| 国产精品中文字幕在线观看| 四虎永久在线观看| 亚洲欧美色图小说| 我看黄色一级片| 天天躁日日躁狠狠躁欧美巨大小说 | 欧美片网站yy| 一级片手机在线观看| 影音先锋亚洲精品| 亚洲自拍偷拍在线| 视频免费一区| 欧美在线观看一二区| 久久人妻一区二区| 在线精品在线| caoporen国产精品| 久久99久久| 欧美日韩国产综合视频在线观看中文| 亚洲一二区在线观看| 欧美成人激情| 福利一区视频在线观看| 一个人看的www久久| 国产亚洲欧美精品久久久www| 久久国产人妖系列| 色综合久久88色综合天天提莫| 欧洲一区精品| 亚洲精品理论电影| 99久在线精品99re8热| 粉嫩av一区二区三区| 欧美日韩一区二区三区电影| 青娱乐极品盛宴一区二区| 亚洲天堂网在线观看| 免费的毛片视频| 久久久久久久久久久电影| 92看片淫黄大片一级| 色婷婷综合久久久久久| 26uuu亚洲国产精品| 亚洲 另类 春色 国产| 精品久久久久国产| 午夜一区二区三区免费| 久久精选视频| 日韩免费av电影| 成人av集中营| 久久精品中文字幕免费mv| 一级片视频免费| 亚洲欧洲成人自拍| 自拍一级黄色片| 欧美视频网站| 精品久久久久久一区二区里番| 国产伦久视频在线观看| 亚洲精品丝袜日韩| 中文字幕av免费观看| 国产婷婷色一区二区三区四区| 国产精品天天av精麻传媒| 青青草国产成人a∨下载安卓| 国产精品在线看| 亚洲大胆人体大胆做受1| 欧美xfplay| 依依成人综合网| 国产视频一区在线播放| 亚洲xxx在线观看| 欧美三区不卡| 欧美极品视频一区二区三区| 国产69精品久久| 欧美理论电影在线播放| 婷婷亚洲一区二区三区| 色综合激情久久| 亚洲综合久久av一区二区三区| 国产精品一区二区无线| 蜜臀av无码一区二区三区| 国产成人调教视频在线观看| 91免费欧美精品| 捆绑调教日本一区二区三区| 中文字幕自拍vr一区二区三区| 国产成人三级一区二区在线观看一 | 精品综合久久久久久8888| www.18av.com| 精品在线播放| 999精品视频一区二区三区| 亚洲午夜天堂| 欧美成人国产va精品日本一级| 视频一区 中文字幕| 欧美日韩国产经典色站一区二区三区 | 青青草免费观看免费视频在线| 欧美午夜精品久久久久久孕妇| 日日噜噜夜夜狠狠久久波多野| 99久久婷婷国产| 欧美国产日韩在线视频 | 亚洲欧洲日本精品| 亚洲美女视频在线免费观看 | 麻豆传媒在线完整视频| 亚洲国产婷婷香蕉久久久久久| 中文字幕久久熟女蜜桃| 亚洲成a人v欧美综合天堂| 中文字幕91视频| 91在线高清观看| 在线成人精品视频| 蜜桃视频第一区免费观看| 成人毛片一区二区| 国产精品免费无码| 亚洲视屏一区| 在线视频精品一区| 九色成人国产蝌蚪91| 高清视频在线观看一区| 欧美大片网站| 日本久久亚洲电影| 国产精品电影| 欧美国产中文字幕| 免费成人黄色| 国产午夜精品美女视频明星a级| 亚洲精品一区二区三区新线路| 欧美日韩国产色站一区二区三区| 东京热一区二区三区四区| 亚洲成国产人片在线观看| 粉嫩av性色av蜜臀av网站| 欧美激情一区二区三区在线| 三级黄色片网站| 99精品视频一区| 欧美日韩一区二区三区四区五区六区| 久久超级碰视频| 亚洲国产日韩欧美在线观看| 日韩综合小视频| 黄色高清无遮挡| 亚洲欧美日韩一区在线观看| 成品人视频ww入口| 欧美深夜福利| 国产高清av在线播放| 国产精品第十页| 91网站在线观看免费| 在线看片不卡| 97超碰在线视| 激情久久中文字幕| 野外做受又硬又粗又大视频√| 欧美国产日本| 丁香婷婷综合激情| 精品91久久久久| 国产视频九色蝌蚪| 亚洲欧美日韩国产一区| 麻豆av免费在线| 日本成人在线不卡视频| 污片在线免费看| 国内精品视频一区二区三区八戒| 久久久久久久久久久久久久久国产| 激情综合色综合久久| 99视频在线观看视频| 国产乱码精品一区二区三区五月婷| 亚洲综合123| 成人免费高清视频在线观看| 美女扒开腿免费视频| 91香蕉视频黄| 少妇av片在线观看| 日韩美女视频一区| 精品无码免费视频| 福利精品视频在线| 亚洲精品国产精品国自产网站按摩| 欧美日韩aaa| 丰满肉嫩西川结衣av| 国产午夜精品理论片a级探花| 成人在线免费公开观看视频| 久久这里只有精品视频首页| 国产盗摄一区二区| 日本国产一区二区三区| 欧美成人aaa| 国产精品三区www17con| 少妇精品久久久一区二区| 伊人久久婷婷色综合98网| 欧美日韩国产免费观看| 久久网站免费视频| 麻豆精品国产传媒mv男同| 亚洲美女高潮久久久| 久久久久亚洲综合| 一区视频免费观看| 日韩欧美国产免费播放| 6—12呦国产精品| 亚洲福利小视频| 国产福利免费在线观看| 欧美激情视频网址| 少妇精品视频一区二区免费看| 亚洲综合小说区| 女优一区二区三区| 2022中文字幕| 免费观看日韩电影| 中国黄色片视频| 国产精品久久久久久久久久免费看| 九九九在线视频| 欧美午夜宅男影院| 色呦呦中文字幕| 久久黄色av网站| 日韩欧美一区二区三区免费观看 | 97人妻精品一区二区三区视频 | 少妇精品无码一区二区免费视频 | 北条麻妃在线一区二区| 蜜臀久久精品| 不卡一区二区三区四区五区| 国产精品欧美在线观看| a级免费在线观看| 久久av老司机精品网站导航| 国产成人无码一区二区在线观看 | 欧美 国产 精品| 日韩精品乱码免费| 国产十八熟妇av成人一区| 中文字幕亚洲综合久久菠萝蜜| 中文字字幕在线中文| 欧美mv和日韩mv的网站| 老司机免费在线视频| 国产精品爱啪在线线免费观看| 精品国产午夜肉伦伦影院| 精品一区二区成人免费视频| 天堂精品中文字幕在线| 亚洲男女在线观看| 亚洲一区二区四区蜜桃| 精品国产伦一区二区三| 中文字幕精品在线视频| 经典三级一区二区| 麻豆av一区二区三区久久| 亚洲三级观看| 国产一级伦理片| 亚洲成人激情综合网| 国内精品国产成人国产三级| 少妇av一区二区三区| 日韩精品第一| 日本黄网免费一区二区精品| 美女尤物久久精品| 一级性生活大片| 福利视频一区二区| 欧美孕妇孕交xxⅹ孕妇交| 欧洲精品毛片网站| 日本中文字幕在线一区| 波多野结衣家庭教师在线| 99久久久久免费精品国产| 日韩精品一区二区不卡| 亚洲国产精品免费| 激情国产在线| 久久久精品国产一区二区三区| 中文亚洲欧美| 国精产品一区一区三区免费视频| 精品久久久久久久大神国产| 亚洲人成色777777精品音频| 欧美亚洲一区在线| 狠狠做六月爱婷婷综合aⅴ| 丰满少妇在线观看| 国产精品视频免费看| 一区二区三区黄| 草民午夜欧美限制a级福利片| 精品国产亚洲日本| 免费看毛片的网址| 久久久www免费人成精品| 国产日韩久久久| 另类视频在线观看| 66精品视频在线观看| 亚洲不卡中文字幕无码| 2014亚洲片线观看视频免费| 中文有码在线播放| 久久天天躁狠狠躁夜夜躁2014| 亚州一区二区| 欧美色图色综合| 中文字幕乱码久久午夜不卡| 国产伦精品一区二区三区四区| 久久99精品久久久久久青青91| 九九热播视频在线精品6| 黄色国产精品视频| 国产精品久久久久久久岛一牛影视 | 青青草精品视频| 一区二区视频免费看| 亚洲国产美女久久久久| 久久久成人av毛片免费观看| 欧美少妇一级片| 26uuu久久天堂性欧美| 中文在线免费观看| 欧美精品激情在线| 久操国产精品| 欧美人与性动交α欧美精品| 精品久久久久久亚洲精品| 91在线观看| 国产欧美日韩一区| 久久精品国产99久久6| 伊人365影院| xvideos国产精品| 欧美变态挠脚心| 国产高清999| 色欧美乱欧美15图片| 91极品在线| 色播亚洲视频在线观看| 国产a视频精品免费观看| 波多野结衣日韩| 久久琪琪电影院| 精品日产免费二区日产免费二区| 无码人妻丰满熟妇区毛片蜜桃精品 | 在线日韩日本国产亚洲| 成人午夜网址|