国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频

Golang 實(shí)現(xiàn) Paxos 分布式共識(shí)算法

共 2381字,需瀏覽 5分鐘

 ·

2020-12-26 16:00

前文《理解 Paxos》只包含偽代碼,幫助了理解但又不夠爽,既然現(xiàn)在都講究?Talk is cheap. Show me the code.?這次就把文章中的偽代碼用 Go 語(yǔ)言實(shí)現(xiàn)出來(lái),希望能幫助各位朋友更直觀的感受 Paxos 論文中的細(xì)節(jié)。

但我們需要對(duì)算法做一些簡(jiǎn)化,有多簡(jiǎn)單呢?我們不持久化存儲(chǔ)任何變量,并且用?chan?直接代替 RPC 調(diào)用。

代碼地址:https://github.com/tangwz/paxos/tree/naive

記得切換到 naive 分支。

定義相關(guān)結(jié)構(gòu)體

我們定義 Proposer 如下:

type proposer struct {
// server id
id int
// the largest round number the server has seen
round int
// proposal number = (round number, serverID)
number int
// proposal value
value string
acceptors map[int]bool
net network
}

這些結(jié)構(gòu)體成員都很容易理解,其中?acceptors?我們主要用來(lái)存儲(chǔ) Acceptors 的地址,以及記錄我們收到 Acceptor 的成功/失敗響應(yīng)。

Acceptor 的結(jié)構(gòu)體:

type acceptor struct {
// server id
id int
// the number of the proposal this server will accept, or 0 if it has never received a Prepare request
promiseNumber int
// the number of the last proposal the server has accepted, or 0 if it never accepted any.
acceptedNumber int
// the value from the most recent proposal the server has accepted, or null if it has never accepted a proposal
acceptedValue string

learners []int
net network
}

主要成員解釋都有注釋?zhuān)?jiǎn)單來(lái)說(shuō)我們需要記錄三個(gè)信息:

  • promiseNumber:承諾的提案編號(hào)

  • acceptedNumber:接受的提案編號(hào)

  • acceptedValue:接受的提案值

定義消息結(jié)構(gòu)體

消息結(jié)構(gòu)體定義了 Proposer 和 Acceptor 之間、Acceptor 和 Leaner 之間的通訊協(xié)議。最主要的還是 Paxos 的兩階段的四個(gè)消息。

  • Phase 1 請(qǐng)求:提案編號(hào)

  • Phase 1 響應(yīng):如果有被 Accepted 的提案,返回提案編號(hào)提案值

  • Phase 2 請(qǐng)求:提案編號(hào)提案值

  • Phase 2 響應(yīng):Accepted 的提案編號(hào)提案值

這樣看,我們的消息結(jié)構(gòu)體只需要提案編號(hào)和提案值,加上一個(gè)消息類(lèi)型,用來(lái)區(qū)分是哪個(gè)階段的消息。消息結(jié)構(gòu)體定義在 message.go 文件,具體如下:

// MsgType represents the type of a paxos phase.
type MsgType uint8

const (
Prepare MsgType = iota
Promise
Propose
Accept
)

type message struct {
tp MsgType
from int
to int
number int // proposal number
value string // proposal value
}

實(shí)現(xiàn)網(wǎng)絡(luò)

網(wǎng)絡(luò)上可以做的選擇和優(yōu)化很多,但這里為了保持簡(jiǎn)單的原則,我們將網(wǎng)絡(luò)定義成?interface。后面完全可以改成 RPC 或 API 等其它通信方式來(lái)實(shí)現(xiàn)(沒(méi)錯(cuò),我已經(jīng)實(shí)現(xiàn)了一個(gè) Go RPC 的版本了)。

type network interface {
send(m message)
recv(timeout time.Duration) (message, bool)
}

接下里我們?nèi)?shí)現(xiàn) network 接口:

type Network struct {
queue map[int]chan message
}

func newNetwork(nodes ...int) *Network {
pn := &Network{
queue: make(map[int]chan message, 0),
}

for _, a := range nodes {
pn.queue[a] = make(chan message, 1024)
}
return pn
}

func (net *Network) send(m message) {
log.Printf("net: send %+v", m)
net.queue[m.to] <- m
}

func (net *Network) recvFrom(from int, timeout time.Duration) (message, bool) {
select {
case m := <-net.queue[from]:
log.Printf("net: recv %+v", m)
return m, true
case <-time.After(timeout):
return message{}, false
}
}

就是用?queue?來(lái)記錄每個(gè)節(jié)點(diǎn)的?chan,key 則是節(jié)點(diǎn)的 server id。

發(fā)送消息則將?Message?發(fā)送到目標(biāo)節(jié)點(diǎn)的?chan?中,接受消息直接從?chan?中讀取數(shù)據(jù),并等待對(duì)應(yīng)的超時(shí)時(shí)間。

不需要做其它網(wǎng)絡(luò)地址、包相關(guān)的東西,所以非常簡(jiǎn)單。具體在?network.go?文件。

實(shí)現(xiàn)單元測(cè)試

這個(gè)項(xiàng)目主要使用 go 單元測(cè)試來(lái)檢驗(yàn)正確性,我們主要測(cè)試兩種場(chǎng)景:

  • TestSingleProposer(單個(gè) Proposer)

  • TestTwoProposers(多個(gè) Proposer)

測(cè)試代碼通過(guò)運(yùn)行 Paxos 后檢查 Chosen 返回的提案值是否符合預(yù)期。

實(shí)現(xiàn)算法流程

按照角色將文件分為 proposer.go, acceptor.go 和 learner.go,每個(gè)文件都有一個(gè)?run()?函數(shù)來(lái)運(yùn)行程序,run()?函數(shù)執(zhí)行條件判斷,并在對(duì)應(yīng)的階段執(zhí)行對(duì)應(yīng)的函數(shù)。

按照偽代碼描述,我們很容易實(shí)現(xiàn) Phase 1 和 Phase 2,把每個(gè)階段的請(qǐng)求響應(yīng)都作為一個(gè)函數(shù),我們一步步來(lái)看。

第一輪 Prepare RPCs 請(qǐng)求階段:

// Phase 1. (a) A proposer selects a proposal number n

// and sends a prepare request with number n to

// a majority of acceptors.

func (p *proposer) prepare() []message {
p.round++
p.number = p.proposalNumber()
msg := make([]message, p.majority())
i := 0

for to := range p.acceptors {
msg[i] = message{
tp: Prepare,
from: p.id,
to: to,
number: p.number,
}
i++
if i == p.majority() {
break
}
}
return msg
}

// proposal number = (round number, serverID)
func (p *proposer) proposalNumber() int {
return p.round<< 16 | p.id
}

Prepare 請(qǐng)求階段我們將 round+1 然后發(fā)送給多數(shù)派 Acceptors。

注:這里很多博客和教程都會(huì)將 Prepare RPC 發(fā)給所有的?Acceptors,6.824 的 paxos 實(shí)驗(yàn)就將 RPC 發(fā)送給所有 Acceptors。這里保持和論文一致,只發(fā)送給 a majority of acceptors。

第一輪 Prepare RPCs 響應(yīng)階段:

接下來(lái)在?acceptor.go?文件中處理請(qǐng)求:

func (a *acceptor) handlePrepare(args message) (message, bool) {
if a.promiseNumber >= args.number {
return message{}, false
}
a.promiseNumber = args.number
msg := message{
tp: Promise,
from: a.id,
to: args.from,
number: a.acceptedNumber,
value: a.acceptedValue,
}
return msg, true
}
  • 如果?args.number?大于?acceptor.promiseNumber,則承諾將不會(huì)接收編號(hào)小于?args.number的提案(即?a.promiseNumber = args.number)。如果之前有提案被 Accepted 的話,響應(yīng)還應(yīng)包含 a.acceptedNumber 和 a.acceptedValue。

  • 否則忽略,返回?false。

第二輪 Accept RPCs 請(qǐng)求階段:

func (p *proposer) accept() []message {
msg := make([]message, p.majority())
i := 0
for to, ok := range p.acceptors {
if ok {
msg[i] = message{
tp: Propose,
from: p.id,
to: to,
number: p.number,
value: p.value,
}
i++
}

if i == p.majority() {
break
}
}
return msg
}

當(dāng) Proposer 收到超過(guò)半數(shù) Acceptor 的響應(yīng)后,Proposer 向多數(shù)派的 Acceptor 發(fā)起請(qǐng)求并帶上提案編號(hào)和提案值。

第二輪 Accept RPCs 響應(yīng)階段:

func (a *acceptor) handleAccept(args message) bool {
number := args.number
if number >= a.promiseNumber {
a.acceptedNumber = number
a.acceptedValue = args.value
a.promiseNumber = number
return true
}

return false
}

Acceptor 收到?Accept()?請(qǐng)求,在這期間如果 Acceptor 沒(méi)有對(duì)比 a.promiseNumber 更大的編號(hào)另行 Promise,則接受該提案。

別忘了:Learning a Chosen Value

在 Paxos 中有一個(gè)十分容易混淆的概念:Chosen Value 和 Accepted Value,但如果你看過(guò)論文,其實(shí)已經(jīng)說(shuō)得非常直接了。論文的 2.3 節(jié) Learning a Chosen Value 開(kāi)頭就說(shuō):

To learn that a value has been chosen, a learner must find out that a proposal has been accepted by a majority of acceptors.?

所以 Acceptor 接受提案后,會(huì)將接受的提案廣播 Leaners,一旦 Leaners 收到超過(guò)半數(shù)的 Acceptors 的 Accepted 提案,我們就知道這個(gè)提案被 Chosen 了。

func (l *learner) chosen() (message, bool) {
acceptCounts := make(map[int]int)
acceptMsg := make(map[int]message)

for _, accepted := range l.acceptors {
if accepted.number != 0 {
acceptCounts[accepted.number]++
acceptMsg[accepted.number] = accepted
}
}

for n, count := range acceptCounts {
if count >= l.majority() {
return acceptMsg[n], true
}
}
return message{}, false
}

運(yùn)行和測(cè)試

代碼拉下來(lái)后,直接運(yùn)行:

go test

寫(xiě)在后面

為什么不用 mit 6.824 的課程代碼?

之前我曾把 mit 6.824 的 Raft 答案推到自己的 Github,直到 2020 開(kāi)課的時(shí)候 mit 的助教發(fā)郵件讓我將我的代碼轉(zhuǎn)為 private,因?yàn)檫@樣會(huì)導(dǎo)致學(xué)習(xí)課程的人直接搜到代碼,而無(wú)法保證作業(yè)獨(dú)立完成。

確實(shí),實(shí)驗(yàn)是計(jì)算機(jī)最不可或缺的環(huán)節(jié),用 mit 6.824 2015 的 paxos 代碼會(huì)導(dǎo)致很多學(xué)習(xí)者不去自己解決困難,直接上網(wǎng)搜代碼,從而導(dǎo)致學(xué)習(xí)效果不好,違背了 mit 的初衷。

當(dāng)然,你也可以說(shuō)現(xiàn)在網(wǎng)上以及很容易搜到 6.824 的各種代碼了,但出于之前 mit 助教的郵件,我不會(huì)將作業(yè)代碼直接發(fā)出來(lái)。

感興趣的同學(xué)可以到 2015 版本學(xué)習(xí):http://nil.csail.mit.edu/6.824/2015/

未來(lái)計(jì)劃

  • 實(shí)現(xiàn)一個(gè)完整的(包含網(wǎng)絡(luò)和存儲(chǔ)的) Paxos

  • 基于 Paxos 實(shí)現(xiàn)一個(gè) Paxos KV 存儲(chǔ)

  • 實(shí)現(xiàn)其它 Paxos 變種

歡迎各位朋友催更……

結(jié)語(yǔ)

本文代碼在 Github 上,如本文有什么遺漏或者不對(duì)之處,或者各位朋友有什么新的想法,歡迎提 issue 討論。


推薦閱讀


福利

我為大家整理了一份從入門(mén)到進(jìn)階的Go學(xué)習(xí)資料禮包,包含學(xué)習(xí)建議:入門(mén)看什么,進(jìn)階看什么。關(guān)注公眾號(hào) 「polarisxu」,回復(fù)?ebook?獲??;還可以回復(fù)「進(jìn)群」,和數(shù)萬(wàn) Gopher 交流學(xué)習(xí)。

瀏覽 10
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)
評(píng)論
圖片
表情
推薦
點(diǎn)贊
評(píng)論
收藏
分享

手機(jī)掃一掃分享

分享
舉報(bào)

感谢您访问我们的网站,您可能还对以下资源感兴趣:

国产秋霞理论久久久电影-婷婷色九月综合激情丁香-欧美在线观看乱妇视频-精品国avA久久久久久久-国产乱码精品一区二区三区亚洲人-欧美熟妇一区二区三区蜜桃视频 亚洲秘无码一区二区三区胖子| 黄色毛片av| 操逼视频免费在线观看| 手机在线看A片| 国产一级生活片| 日韩99热| 国产精品大香蕉| 婷婷五月天无码| 谁有毛片网站| 日日舔| 成人视频高清无码| 日韩性爱视频| 国产精成人品| av在线资源网| 欧美色视频一区二区三区在线观看 | 黄色日逼视频| 免费毛片+一区二区三区| 美女大香蕉| 日皮网站在线观看| 91人妻人人澡人人爽人人精品一 | 91亚洲精品国产成人| 女人自慰网站在线观看| 成人精品18| 色色五月丁香婷婷| 久久久久久无码视频| 免费看a| 伊人久久av| 山西真实国产乱子伦| 亚洲熟妇AV日韩熟妇在线| 日韩黄色电影在线| 大香蕉福利视频导航| 日韩人妻一区二区| 欧美香蕉| 国产日韩欧美一区二区| 特级欧美AAAAAA| 色欲精品| 亚洲视频A| 久久午夜福利视频| 久久久久久无码日韩欧美电影| 成人无码专区| 亚洲操逼片| 亚洲色老板| 亚洲人成人无码一区二区三区| 操操操综合| 午夜理论在线| 伊人综合色| 欧美成人视频大全| 樱桃码一区二区三区| 国产va在线观看| 999国产精品| 国产亚洲欧洲| 国产乱伦免费视频| 欧美日韩国产免费观看成人片| 91人妻人人澡人人爽人人精品一 | 午夜免费网站| 丰满人妻一区二区三区46| 日韩欧美片| 一级二级无码| 亚洲第一网无码性色| 91精品国产综合久久久久久| 国产免费黄色电影| 成人在线精品| 欧美一道本| 麻豆高清无码| 你懂的网站在线观看| 性爱日韩| 悠悠久久久| 国产精品v欧美精品v日韩| 欧美熟妇擦BBBB擦BBBB| 久久福利网| 国产又大又粗又爽| 日韩顶级毛片| 91干穴穴在线观看| 天天操操操| 一级成人片| 激情一区二区三区| 79色色| 国产精品人妻AⅤ在线看| 99福利视频| 午夜AV在线观看| AV青青草| 在线激情网站| wwwAV在线观看| 精品视频日韩| 18害羞勿进网站国产| 日韩视频中文字幕在线| 高清无码网站在线观看| 国产男女无套免费| www.日本黄色| 91AV一区二区三区| 国产成人三级片在线观看| 日本欧美一级片| 久久久免费黄色视频| 精品国产乱子伦一区二区三区,小小扐 | 99中文字幕| 欧美日逼超碰| 午夜天堂精品久久久| 人人舔| 欧美性爱XXXX黑人XYX性爽| 黄色小电影在线观看| AV五月| 亚洲日韩AV在线| 日韩欧美中文字幕公布| 欧日无码| 免费涩涩无遮挡18国产| 青娱乐国产| 国产高清免费无码| 欧美性猛交一区二区三区精品 | 欧美激情四射老司机| 毛片精品| 777偷窥盗摄00000| 久久久福利视频| 国产视频无码在线| 奇米久久| 日本综合视频| 久久国产一级片| 欧美日韩性爱视频| 亚洲狠狠撸| 中文字幕永久在线| 任我操在线视频| 超碰v| 怡红院av| 青青草成人电影| 手机在线成人视频| 91成人福利| 欧美成人电影在线观看| 人人狠狠综合婷婷| 国产精品一区二| 欧美偷拍一区| 欧美成人在线观看| 国产在线拍偷自揄拍无码一区二区| 亚洲色成人中文字幕在线| 91站街农村熟女露脸| 大香蕉在线网站| yy午夜福利| 91美女视频| 色呦呦视频在线观看| 日本精品电影| 国产又爽又黄A片| 国产精品久久久久久久9999| 夜夜爽日日爽| 日韩中文字幕一区| 四川少妇bbbbbbbbb| 国产精品久久免费视频| 五月丁香综合网| 日韩三级AV| 成人性爱视频免费在线观看| 亚洲成人无码在线| 欧美操逼的| 欧美特黄一级视频| 亚洲人视频| 安徽妇女BBBWBBBwm| 日韩一级二级三级| 欧美老熟妇BBBBB搡BBB| 色婷婷天天操天天干| 哪里可以看毛片| 大香蕉大香蕉网| 欧美精品一区二区三区蜜臀| www.亚洲天堂| 成人看片黄a免费看视频| 精品人妻一区二区免费蜜桃| 欧美性之站| 亚洲久久无码| 综合一区二区三区| 国产ts在线观看| 亚洲成人电影AV| 日韩一级二级| 成人做爰黄AAA片免费直播岛国 | а天堂中文在线资源| av一二三区| 亚洲视频免费观看| 亚洲,制服,综合,中文| 久久一区二区三区四区五区| 精品一区二区三区无码| 天干夜操| 精品无码视频| 成人av天堂| 人人澡超碰碰| 蜜芽成人精品久久久视频| 特特级毛片| 九九九九精品| 久久人爽| 欧美香蕉视频| 日韩成人一级片| 亚洲三级AV| AV影院在线| 91女人18毛片水多国产| 在线观看黄色AV| A片黄色电影网站| 精品丰满人妻一区二区三区免费观| 亚洲欧洲在线播放| 亚洲免费在线视频| 电影91久久久| 少妇综合网| 日韩欧美在线不卡| 国产传媒一区| 蜜臀久久99久久久久久宅男| 五月天色色小说| 婷婷五月天在线观看| 亚洲日本欧美| 国产精品久久久久久久久久久久久久| 一二区免费视频| 可以看的毛片| 日本黄色片在线播放| 国产中文字幕AV| 大香蕉伊人视频| 中文字幕不卡在线观看| 学生妹一级片| 自拍偷拍AV| 三级片免费网址| 天天天日天天天天天天天日歌词| 亚洲无码高清电影| 日本无码视频在线观看毒| ⅴA日本成人| 欧美日韩国产在线观看| 成人性爱在线观看| 人成在线免费视频| 日皮视频免费在线观看| 日韩毛片中文字幕| 日韩天天| 三级无码电影| 国产九九在线视频| 成人小视频在线| 国产成人午夜高潮毛片| 丁香六月久久| 天堂网一区二区三区| 波多野结衣福利视频| 国产污视频| 一级成人片在线观看| 亚洲AV第一页| 国产精品秘入口18禁网站| 欧美激情伊人久久五月天| 天天干天天干天天| 另类性姿势BBwBBW| 波多野结衣网址| 国产成人视频在线观看| 亚洲高清视频在线| 91人人澡人人爽人人看| 西西444www| 91亚洲精品视频| 久久中文视频| 久久99久久99久久99| 中文无码日本一级A片人| 成年人黄色视频在线观看| 中国老女人性爱视频| 久久久精品午夜人成欧洲亚洲韩国| 成人免费视频网| 中国国产乱子伦| 成人无码网站在线观看| 午夜免费网站| 黄色视频毛片一一| 97国产在线观看| 青青成人视频| 操BBB操BBB| 69国产成人综合久久精品欧美 | 国产主播av| 精品国产一二三| 日韩黄色视频在线观看| 91在线观看免费视频| 国产3p绿帽骚妻视频| 蜜桃久久久亚洲| 日韩AV电影网站| 91九色TS另类国产人妖| 夜夜夜叫天天天做| 一级中国毛片| 操逼网首页| 操b视频在线观看| 欧美AAAAAA| 国产免费黄色电影| 91啦丨露脸丨熟女| 国产免费视频69| 成人社区视频| 影音先锋资源| 亚洲精品一区中文字幕乱码| 伊人三级网| 在线国产激情视频| 在线观看免费一区| 初尝人妻滑进去了莹莹视频| a4yy午夜福利| 亚洲A片在线观看| 手机免费av| 亚洲天堂AB| 日韩三级片AV| 成人中文字幕在线视频| 国产三级一区二区| 国产乱伦内射| 亚洲免费黄色电影| 中文字幕日韩欧美| 狼友初视频在线观看| 久久午夜鲁丝| 午夜精品久久久久久久91蜜桃 | 91中文字幕+乱码| 免费a视频| 悠悠无码一区日韩妇女| 做爱视频91| 懂色av蜜臀av粉嫩av分| 北条麻纪无码视频| 日韩色吧| 亚洲精品国产精品国自产观看| 懂色av懂色av粉嫩av分享吧| 大香蕉在线播| 国产精品色情| 国产精品乱子伦视频一区二区| 国产乱子伦一区二区三精品| H片在线观看| 好逼123| 国产欧美日韩在线播放| 亚洲成人第一页| 亚洲免费在线播放| 亚洲第一网无码性色| 学生妹一级大片| 天天操夜夜爱| 国产乱子伦视频国产印度| 婷婷五月天AV| 两根茎一起进去好爽A片在线观看| 2021av| 日本在线黄色视频| 亚洲免费在线视频观看| 亚洲吹箫| www.jiujiujiu| 国产精品黄色片| 无码专区视频| 丝袜制服中文字幕无码专区| 竹菊av一区二区三区四区五区| 综合网插菊花| 曰韩毛片| 欧美综合亚洲图片综合区| 高清无码直接看| 国产精品久久久久精| 国产精品秘麻豆果冻传媒潘甜甜丶| 国产精品果冻传媒| 大香蕉色视频| 一区二区三区四区视频在线 | 国精产品一二四区黑人| 成人一级片| 午夜激情操一操| 91色秘乱码一区二区| 日韩一级网站| 大地8免费高清视频观看大全| 天天爱av| 欧美理论片在线观看| 亚洲一本在线电影av| 成人无码影院日韩,成人年… | 嫩草A片www在线观看| 青青草原视频在线| 青青草无码成人天堂免费| 久久久999精品视频| 一本加勒比HEZYO东京热无码| 俄罗斯熟妇搡BBBB搡BBBB | 91嫖妓站街按店老熟女| 免费无码婬片AAAA片直播| 人人草人人| 丰满人妻-区二区三区| 亚洲AV无码成人精品区大猫| 欧美成人在线观看| 日韩欧美在线一区| 国产又色又爽又黄又免费| 青青五月天| 午夜免费无码| 爱爱一区| 久草视频新| 欧美性BBB槡BBB槡BBB| 狠狠干综合| 日韩欧美高清在线| 狠狠穞A片一區二區三區| 91大神在线资源观看无广告| 亚洲中文无码电影| 五月天丁香社区| 成人激情久久| 69成人免费视频| 亚洲男人综合| 3D动漫精品啪啪一区二区竹笋| 豆花视频成人| 中国老女人日逼| 久久精品成人| 成人免看一级a一片| 欧美自拍视频在线| 99视频免费在线观看| AV资源在线免费观看| 天天插夜夜操| 青青草原视频在线免费观看| 精品在线一区| 久久久中文| 日本高清无码在线观看| av福利电影在线| 国产成人自拍视频在线观看| 欧美一级在线| 99久久国产精| 特级西西西西4444级酉西88wwww特 | 天天激情站| 福利视频二区| 日韩综合不卡| 无码操B| 天天综合字幕一区二区| av在线观看中文字幕| 骚逼中文字幕| 国产精品日韩无码| 日本黄A级A片国产免费| 手机在线观看AV| 91麻豆精品A片国产在线观看| 国产成人AV在线观看| 伊人黄片| 日韩久久人妻| 最新国产激情视频| 精品国产午夜福利在线观看| 奶头和荫蒂添的好舒服囗交漫画| 亚洲一区二区AV| 北条麻妃99精彩视频| 97人人精品| 中文无码精品欧美日韩| 男女日逼网站| 按摩性高湖婬AAA片A片中国| 亚洲中文字幕影院| 国产aaaaaaaaaaaaa| 国内精品一区二区三区| 中国乱伦视频| 色秘乱码一区二区三区唱戏| 婷婷五月18永久免费视频| 亚洲第五页| 911国产视频| 久久国产精品网站| 青青综合网| 精品人妻中文字幕| 好吊顶亚洲AV大香蕉色色| 91视频免费观看| 日韩亚洲欧美在线| 无码视频免费播放| 色天堂网| 一级黄色A片视频| 天堂一区| 亚洲无码手机在线观看| 91人妻一区二区三区无不码超满 | 日韩不卡一区| 免费无码婬片A片AA片| 婷婷色亚洲| 亚洲一区2区| 丁香六月婷婷综合| 中文字幕丰满熟妇人妻| 韩日高清无码| 五月婷婷视频| 精产国品一区二区三区| 免费在线观看中文字幕| 亚洲欧洲日韩| 国产系列第一页| 久草在线| 欧美精产国品一区二区区别| 九九re精品视频在线观看| 91精品久久久久久| 成人片免费看| 福利视频中文字幕| 亚洲AV无码成人精品| 在线国产91| 99视频在线免费| 日韩第一页| 亚洲精品秘一区二区三区在线观看| 无毛无码| 国产精品6| 成人无码国产| 香蕉大综合| 青青草原AV| 欧美狠狠撸| 在线观看中文字幕亚洲| 欧美日本国产| 欧美疯狂做受XXXXX高潮| 亚洲一区二区视频在线观看| 蜜臀av在线| 看看AV| 九九久久免费视频| 大香蕉伊人丁香五月| 久久中文视频| 影音av资源| 亚洲视频A| 免费操逼| 欧美污网站| 日本在线一区二区| 91在线无码视频| 操逼在线视频| 国产精品操| 国产美女做爱视频| 国产91综合一区在线观看| 久久水蜜桃| 国产精品粉嫩福利在线| a视频免费看| 在线看片AV| 亚洲午夜视频在线观看| 69国产精品成人无码视频色| 日日骚影院| 另类老妇性bbwbbwbbw| 人人澡人人看| 日本视频一区二区三区| 黄色无码视频在线观看| 亚洲影院第一页在线观看| 中文字幕在线无码| 欧美日韩亚洲视频| 日韩AV大片| 黄片视频链接| 亚洲日韩在线视频| av电影在线观看| 国产又爽又黄免费网站在线| 五月丁香婷婷啪啪| 一大高清日韩| 骚妇p| 国产乱子伦真实精品| 欧美精品91| 日韩h视频| 国产亲子乱婬一级A片借种| 国产免费高清无码| 亚洲AV无码成人精品区天堂小说| 亚洲AV高清无码| 天堂а√在线中文在线新版| 国产人人爱| 黄片观看| 先锋影音亚洲AV每日资源网站| 狼人综合网| 狠狠操在线| 夜夜操网站| 十八禁视频在线观看网站.www| 激情小说在线视频| 最新激情网站| 九九中文字幕| 精品成人| 狠狠操在线| 国产精品a片| 另类老太婆性BBWBBw| jizz无码| 88在线无码精品秘入口九色| 欧美一区二区三区四| 精品一区二区三区av| 91人妻人人澡人人爽人人精品| 伊人操| 99热偷拍| 97人妻精品一区二区三区视频| 9l视频自拍蝌蚪9l成人| 3D动漫精品一区二区在线播放免费| 热久久久久久| 一区二区三区小视频| 91视频美女内射| 天天干天天摸| 69精品| 蜜桃精品视频| 成人黄色视频免费| 91精品电影| 色婷婷成人| 婷婷五月一区| 亚洲美女视频在线观看| 懂色av懂色av粉嫩av| 激情视频在线播放| 精品国产久久久久| 夜夜夜操操操| 天天日夜| 欧美亚洲小说| 伊人日韩| 在线观看免费欧美操逼视频| 永久免费看A人片无码精| 淫一区二区| 操逼逼视频| 狠狠干综合| 无码视频网站| 国产精品福利在线| 黄色一级网站| 青娱乐超碰| 欧洲精品码一区二区三区免费看| 黄色在线观看免费| 99久久久| 肏屄视频在线观看| 青青操逼| 日本高清视频九区| 2025毛片| 色欧美亚洲| 国内自拍2025| 亚州精品成人片| 欧美成人精品一级| 久久久久国产精品视频| 国产成人精品一区二区三区四区 | 亚洲九九| 影音先锋中文字幕资源| 亚日韩视频| 在线天堂9| 9l人人澡人人妻人人精品| 蜜臀网在线观看| 草逼123| 最近日本中文字幕中文翻译歌词| 国产亲子乱XXXXimim/| 欧美亚洲图区| 国产99久久九九精品无码免费| 蜜桃视频在线入口www| 黄色三级毛片| 日韩国产高清无码| 日韩高清无码一区| 人人妻人人爽| 一区二区三区视屏| 四川揉BBB搡BBB| 伊人五月丁香| 超碰九色| 三级AV网站| 亚洲秘无码一区二区三区蜜桃中文| 壁特壁视频在线观看| 午夜福利成人视频| 欧美日韩国产精品| 天天操天天操免费视频| 婷婷五月天激情丁香| 欧洲精品在线免费观看| 欧美日韩性色无码免费| 国产乱伦毛片| 男人天堂视频在线观看| 性欧美| 中文字幕无码AV| 中文免费高清在线观看视频| 超碰在线最新| 午夜亚洲无码| 免费看黄的网站在线观看| 久一精品| 人人插人人操| 操逼视频,黄色大全| 啊啊啊啊国产| 三级视频国产| 草草影院第一页| 91九色91蝌蚪91窝成人| 青娱乐国产在线| 韩国中文字幕HD久久| 成人无码99| 九色麻豆| 久操视频网站| 韩国成人啪啪无码高潮| 免费成人黄视频| 国产亚洲欧美日韩高清| 精品国产va久久久久久久| 欧美色视频在线观看| www.久久99| 少妇激情网站| 少妇厨房愉情理伦BD在线观| 欧美性爱手机在线| 三级成人网| 欧美在线观看视频| 国精产品九九国精产品| 欧美成人无码一区二区三区| 91精品久久久久久粉嫩| 青青草手机视频| 久久av一区| 欧美性爱成人| 国内精品卡一卡二卡三| 亚洲在线免费视频| 91最新国产| 特级西西人体444www高清| 蜜桃AV在线播放| 黄色视频网站免费| 国产成人tv| 九九韩剧网最新电视剧免费观看 | 黑人内射人妖| 久久久久久久AV| 日韩婬乱片A片AAA真人视频 | 天堂无码视频在线播放| 少妇A片| 成人激情综合网| 国产婷婷久久Av免费高清| 久久久久一区二区三区| 日逼欧美| 欧美日韩成人电影| 国产精品9999| 久草大香蕉在线| 水果派中文解说AⅤ| 18XXX亚洲HD护士JD| 久久综合站| 黄色电影一区二区| 国产传媒三级| 国产精品一品二区三区的使用体验| 偷拍亚洲色图| 俺来也网| 亚洲人成免费网站| 精品国产va久久久久久久| 五月色综合| 久久久久久久久久免费视频| 91香蕉国产视频| 国产AV一区二区三区四区| av三级片在线播放| 无码欧美成人AAAA三区在线| 成人无码网站| 中文字幕亚洲中文字幕| 大香蕉在线伊人| 涩婷婷| 91人人妻人人爽| 一级特黄AA片| 99精品六月婷婷综合在线| 日本黄色免费在线观看| 久久成人毛片| AV在线播放中文字幕| 69福利视频| 中文字幕在线观看第一页| 日韩福利一区| 一级黄色a片| 日韩欧美国产黄色电影| 99国产一区| 日韩午夜福利视频| 精品视频在线免费| 北条麻妃在线一区| 浪潮在线观看完整版| 91探花在线播放| 亚洲国产高清视频| 日韩成人AV电影| 97人妻视频| 大地资源第三页在线观看免费播放最新 | 亚洲AV无码| 婷婷久草网| 天天高清无码| 国产成人+综合亚洲+天堂| 中文字幕超清在线观看| 清清草视频| 一本之道DVD不卡视频| 成人激情五月天| 久久国产精品伦子伦| 国产黄色性爱视频| 一级国产黄色视频| 曰逼视频| 久久亚洲中文字幕乱码| 人人看人人搂人人摸| 欧美日韩在线免费观看| 久久成人无码电影| 四房婷婷| 日韩码波多野结衣| 成人三区| 亚洲伊人大香蕉| 日韩在线视频观看| 一级黄色视频免费观看| 久操大香蕉| 亚洲V在线| 黄网站在线观看| 久久免费视频,久久免费视频| av资源在线| 人人做人人做人人做,人人做全句下一| 亚洲激情小说| 迷情校园综合| 久久久桃色| 中文字幕在线免费播放| xxx久久| 国产乱子伦视频国产印度| 国模无码在线| 3D动漫精品啪啪一区二区下载| 久久久久无码国产精品一区| 国模精品无码一区二区免费蜜桃| 99高清国产| 99热视| 性爱AV天堂| 国产A片录制现场妹子都很多 | 久久大鸡吧| 操嫩逼视频| 亚洲AV无码一区二区三竹菊| 亚洲女人在线| 三级不卡视频| 一本道中文字幕| 国产又爽又黄视频在线看| 天天精品| 三上悠亚无码破解69XXX| 欧美性猛交XXXX乱大交| 日韩另类视频| 99欧美精品| 人人草人人| aaa无码| 91成人电影院| 拍拍视频| 国产丝袜av| 人妻人人干| 第四色大香蕉| 91麻豆精品国产91久久久久久 | 成人免费无码婬片在线| 欧美熟妇BBB搡BBB| 欧美精产国品一二三区| 一道本无码在线视频| 小黄片在线免费观看| 黄色在线免费| 大香蕉伊人综合网| 亚洲一级av无码毛片精品| 性猛交AAAA片免费看蜜桃视频| 欧美一级成人| S牛牛AV| 精品99视频| 久操资源站| а√在线中文网新版地址在线| 欧美日韩中文字幕在线| 一个人看的www日本高清视频 | 久久婷婷视频| 伊人大综合| 在线观看免费视频a| 日韩人妻无码精品| 豆花网| 婷婷六月色| 日韩黄色电影在线免费观看| 国产精品一卡二卡| 国产九九九九九九| 久草视频免费在线播放| 91拍真实国产伦偷精品| 911国产精品| 午夜爱爱免费视频| 人人草人人| 97人人色| 亚洲视频A| 狠狠爱一区| 亚洲黄色录像| 热久久伊人| 人妻久操| 日韩强操逼网| 秋霞一区| 黄色电影视频网站| 中文一区在线观看| 美日韩在线观看| 亚洲天堂2017| 国产男女无套免费视频| 可以看的黄色视频| 蜜桃av秘一区二区三区| 99无码视频| 日韩AV中文| 九色PORNY丨自拍蝌蚪| 中文字幕永久在线视频v1.0| 午夜18视频在线观看| 国产无码中文字幕| 国产精品不卡在线| 国产成人自拍视频在线| 国产激情在线| 国产乱伦网| 久久免费国产视频| 中文一线二线视频| 四川BBB操BBB| 亚洲无码一级电影| 首页-91n| 久久区| 狠狠干婷婷| 色哟哟视频| 日韩AV电影网| av干在线| 亚洲一级在线| 69国产| 911精品人妻一区二区三区A片 | 久久这里只有精品99| 麻豆秘在线观看国产| 久久久精品国产视频| 日韩在线一区二区三区| 国产乱伦网| 久操人妻| 污污污污污www网站免费观看| 无码电影在线播放| 国产精品一区二区黑人巨大| 欧美成人图片视频在线| 欧美一级日韩一级| 无码AV在线观看| 超碰碰碰碰碰| 日韩中文字幕无码中字字幕| 国产八区| 欧美视频自拍| 天天色图片| 亚洲都市激情| 精品久久久久久久| 久久精品福利视频| 99久久久久久| 亚洲成人性爱网站| 微熟女地址导航| 51AV在线| 91人人妻人人操| 五月婷婷导航| 青青青国产在线| 最新激情网站| 91夜夜夜| 青青操首页| 在线综合国产欧美| 国产在线观看免费视频今夜| 欧美性爱小说| 日本成人视频| 亚洲精品高清无码| 久久久久久久性爱| 最新AV在线| 久草免费电影| 高清无码不卡在线观看| 久久久激情| 人人摸人人看人人草| 天天爽夜夜爽夜夜爽| 国产剧情一区二区| 成人黄色一级A片| 在线日韩一区二区| 起碰在线视频| 欧美干综合| 精品成人无码一区二区三区| 懂色一区二区二区在线播放视频| 啊啊啊啊国产| 中文日韩| 久久日韩无码| 久操手机在线| 水蜜桃成人在线| 亚洲在线观看网站| 91AV久久| 九九惹伊人| 亚洲欧美日韩免费| 中文字幕一区二区三区人妻电影| 亚洲精品少妇| 2021av| 国产老女人农村HD| 国产中文字幕免费| 大鸡巴久久久久久久| 色婷视频| 日日操日日摸| 波多野结衣无码AV| 亚洲黄片大全| 91在线无码精品秘国产|