亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于二部圖最大匹配的動態(tài)負(fù)載均衡算法①

        2020-09-18 11:44:02孟利民周立鵬
        高技術(shù)通訊 2020年8期
        關(guān)鍵詞:任務(wù)量頂點(diǎn)集群

        周 磊 孟利民 周立鵬 蔣 維

        (*浙江工業(yè)大學(xué)信息工程學(xué)院 杭州 310023) (**浙江樹人大學(xué)信息科技學(xué)院 杭州 310015)

        0 引 言

        隨著網(wǎng)絡(luò)技術(shù)的高速發(fā)展,互聯(lián)網(wǎng)服務(wù)已經(jīng)成為日常生活中不可或缺的部分。由于互聯(lián)網(wǎng)用戶的爆發(fā)式增長,服務(wù)器常常在短時間內(nèi)收到大量并發(fā)的用戶請求,若不能及時處理這些請求將影響用戶體驗(yàn),降低服務(wù)質(zhì)量。因此,單個服務(wù)器遠(yuǎn)遠(yuǎn)無法滿足大量的服務(wù)請求,聯(lián)合多個服務(wù)器的服務(wù)器集群應(yīng)運(yùn)而生。如何合理地分配集群服務(wù)器的任務(wù)并滿足最大的服務(wù)需求是服務(wù)器集群需要解決的關(guān)鍵技術(shù)問題,而負(fù)載均衡是解決服務(wù)器集群難點(diǎn)的核心技術(shù)之一,能夠平衡集群中各個服務(wù)節(jié)點(diǎn)的負(fù)載,充分發(fā)揮服務(wù)器集群的性能。目前國內(nèi)外已經(jīng)提出了各種負(fù)載均衡算法[1]。其中有靜態(tài)負(fù)載均衡算法,如輪詢調(diào)度算法、加權(quán)輪詢調(diào)度算法[2]、目標(biāo)地址散列調(diào)度算法等,這類算法易于實(shí)現(xiàn),但不考慮各個服務(wù)器節(jié)點(diǎn)的負(fù)載狀態(tài),容易導(dǎo)致負(fù)載不均衡;有動態(tài)負(fù)載均衡算法[3,4],如最小連接數(shù)算法、一致性哈希算法[5]、動態(tài)反饋算法[6]等,這類算法沒有考慮服務(wù)器間的性能差異和任務(wù)請求的大小,不能準(zhǔn)確地判斷服務(wù)器真實(shí)的負(fù)載狀態(tài)。動態(tài)負(fù)載均衡算法注重于服務(wù)器負(fù)載狀態(tài)的計(jì)算和反饋,文獻(xiàn)[7]提出一種基于排隊(duì)論綜合指標(biāo)評估的動態(tài)負(fù)載均衡算法,采用服務(wù)器M/M/1排隊(duì)模型,以任務(wù)的平均排隊(duì)時長和平均等待時長來計(jì)算負(fù)載,但其計(jì)算需花費(fèi)較多時間,具有一定的延后性。文獻(xiàn)[8]提出了一種改進(jìn)的流媒體集群動態(tài)負(fù)載均衡調(diào)度算法,通過集群節(jié)點(diǎn)任務(wù)數(shù)變化量動態(tài)修改服務(wù)器負(fù)載的反饋周期,并按服務(wù)器負(fù)載狀況進(jìn)行分類,但當(dāng)反饋周期過小時,服務(wù)器將頻繁計(jì)算負(fù)載,增加服務(wù)器壓力。在異構(gòu)網(wǎng)絡(luò)應(yīng)用中,文獻(xiàn)[9]提出了一種基于模糊控制的負(fù)載均衡決策機(jī)制,用于避免異構(gòu)網(wǎng)絡(luò)中頻繁切換。文獻(xiàn)[10]提出了一種基于接入選擇和業(yè)務(wù)轉(zhuǎn)移的異構(gòu)網(wǎng)絡(luò)動態(tài)負(fù)載均衡機(jī)制,同時提高系統(tǒng)利用率和負(fù)載均衡性。還有注重任務(wù)調(diào)度的遺傳算法、模擬退火算法[11]、粒子群算法[12]等,這類算法實(shí)現(xiàn)較為復(fù)雜,且容易陷入局部最優(yōu)解。文獻(xiàn)[13]提出一種基于遺傳算法的負(fù)載均衡機(jī)制,引入了投資組合Mean-Variance模型來設(shè)置服務(wù)集群中節(jié)點(diǎn)利用率的權(quán)重,以最小化任務(wù)完成時間為條件來獲得最優(yōu)的權(quán)值向量,即為每個服務(wù)器的資源利用率分配權(quán)值從而得到更有效的組合適應(yīng)度函數(shù),但其計(jì)算效率一般,對服務(wù)器的響應(yīng)時間有一定的影響。

        影響負(fù)載均衡算法性能的關(guān)鍵在于如何動態(tài)地將任務(wù)均衡地分配至各個服務(wù)器節(jié)點(diǎn),因此本文提出了一種基于二部圖最大匹配的動態(tài)負(fù)載均衡算法。二部圖最大匹配[14]是指二部圖中不相鄰的邊組成的集合中含邊數(shù)最多的集合,常用于解決任務(wù)指派、資源分配[15]、數(shù)據(jù)匹配[16]等問題。在服務(wù)器集群系統(tǒng)中,管理服務(wù)器按照一定的機(jī)制將任務(wù)隊(duì)列中的任務(wù)分配給集群中的各個服務(wù)器節(jié)點(diǎn),這就是可用二部圖最大匹配解決的現(xiàn)實(shí)應(yīng)用場景之一。本文算法以服務(wù)器和任務(wù)作為圖頂點(diǎn)的子集X和Y,先預(yù)計(jì)任務(wù)的任務(wù)量和期望完成任務(wù)所需的時間,并采用由服務(wù)器反饋得到的任務(wù)量與任務(wù)實(shí)際完成時間的比值作為服務(wù)器的負(fù)載指標(biāo)[17],若任務(wù)預(yù)計(jì)的任務(wù)量與服務(wù)器負(fù)載指標(biāo)的比值小于期望完成任務(wù)所需的時間,則將該任務(wù)頂點(diǎn)與服務(wù)器頂點(diǎn)相連作為圖的邊,由此得到服務(wù)器與任務(wù)的二部圖,再采用Edmonds的匈牙利算法[18]求該二部圖的最大匹配,然后將任務(wù)發(fā)送給匹配到的服務(wù)器,從而動態(tài)地實(shí)現(xiàn)任務(wù)的調(diào)度和服務(wù)器的負(fù)載均衡。

        1 負(fù)載均衡算法調(diào)度模型

        本文提出的基于二部圖最大匹配的動態(tài)負(fù)載均衡算法的系統(tǒng)框架如圖1所示。整個系統(tǒng)主要由管理服務(wù)器和服務(wù)器集群組成。其中服務(wù)器集群中的服務(wù)器用于執(zhí)行任務(wù),并計(jì)算自身的負(fù)載指標(biāo)返回給管理服務(wù)器。管理服務(wù)器可分為4個模塊,分別是任務(wù)分配模塊、任務(wù)預(yù)估模塊、負(fù)載指標(biāo)接收模塊和計(jì)算模塊。負(fù)載指標(biāo)接收模塊負(fù)責(zé)接收服務(wù)器反饋的負(fù)載指標(biāo),并更新當(dāng)前保存在管理服務(wù)器的服務(wù)器集群負(fù)載信息。任務(wù)預(yù)估模塊負(fù)責(zé)預(yù)計(jì)待匹配任務(wù)的任務(wù)量和期望完成任務(wù)所需的時間。計(jì)算模塊根據(jù)各個服務(wù)器的負(fù)載指標(biāo)以及任務(wù)的任務(wù)量和期望完成時間,構(gòu)建服務(wù)器與任務(wù)之間的二部圖并求其最大匹配。任務(wù)分配模塊按照由計(jì)算模塊返回的匹配結(jié)果將任務(wù)分配給各個服務(wù)器。

        圖1 基于二部圖最大匹配的動態(tài)負(fù)載均衡算法系統(tǒng)框架

        服務(wù)器每執(zhí)行一個任務(wù),將記錄該任務(wù)的任務(wù)量r,任務(wù)開始時間tstart和任務(wù)完成時間tend,并由式(1)得到服務(wù)器當(dāng)前負(fù)載指標(biāo)v。

        (1)

        服務(wù)器負(fù)載指標(biāo)代表服務(wù)器完成任務(wù)的速率,與常見算法采用中央處理器(CPU)空閑率、內(nèi)存空閑率等多參數(shù)計(jì)算負(fù)載指標(biāo)相比,降低了服務(wù)器負(fù)載計(jì)算的復(fù)雜度,且更直接地反映了當(dāng)前服務(wù)器的負(fù)載狀態(tài)。若v越大,則說明服務(wù)器的負(fù)載較低,能更快地完成任務(wù);若v越小,則說明服務(wù)器的負(fù)載較大,完成任務(wù)需要消耗更多的時間。那么服務(wù)器集群的負(fù)載指標(biāo)平均值為

        (2)

        其中,n為集群中服務(wù)器數(shù)量。由此可以得到各個服務(wù)器負(fù)載指標(biāo)的方差σ2:

        (3)

        方差σ2越小,說明服務(wù)器之間的負(fù)載越均衡。

        2 負(fù)載均衡算法流程

        本文算法是基于任務(wù)隊(duì)列、服務(wù)器集群和各服務(wù)器負(fù)載指標(biāo)構(gòu)建二部圖,并根據(jù)二部圖的最大匹配結(jié)果向各服務(wù)器分配任務(wù),其總體流程圖如圖2所示。

        圖2 算法流程圖

        整個算法流程主要由管理服務(wù)器和服務(wù)器集群共同工作完成。首先管理服務(wù)器中維護(hù)著一個任務(wù)隊(duì)列,任務(wù)隊(duì)列中含有一定量待執(zhí)行的任務(wù),由集合表示為Jq={J1,J2,J3,…}。服務(wù)器集群中有n臺服務(wù)器,由集合表示為S={S1,S2,S3,…,Sn},服務(wù)器Si主要負(fù)責(zé)接收并執(zhí)行管理服務(wù)器為其分配的任務(wù)Jm。服務(wù)器Si將在任務(wù)Jm被執(zhí)行前后記錄該任務(wù)的任務(wù)量Rm,以及執(zhí)行任務(wù)的開始時間Tmstart和結(jié)束時間Tmend,同時由式(1)計(jì)算得到當(dāng)前服務(wù)器Si的負(fù)載指標(biāo)vi,并將負(fù)載指標(biāo)vi反饋至管理服務(wù)器。

        管理服務(wù)器的負(fù)載指標(biāo)接收模塊中記錄著服務(wù)器集群中各個服務(wù)器的負(fù)載指標(biāo),由集合表示為v={v1,v2,v3,…,vn}。各個服務(wù)器的初始化負(fù)載指標(biāo)可通過管理服務(wù)器向各個服務(wù)器發(fā)送一個測試任務(wù)J0獲得,其任務(wù)量為單位任務(wù)量R0,任務(wù)復(fù)雜度為C0,任務(wù)復(fù)雜度與任務(wù)實(shí)際計(jì)算循環(huán)次數(shù)相關(guān)。

        管理服務(wù)器記錄各個服務(wù)器的初始化負(fù)載指標(biāo)后,從任務(wù)隊(duì)列中按順序取出與服務(wù)器數(shù)量相等的n個任務(wù),由集合表示為J={J1,J2,J3,…,Jn},同時通過任務(wù)預(yù)估模塊得到對應(yīng)任務(wù)的任務(wù)量為R={R1,R2,R3,…,Rn},期望完成任務(wù)所需時間為T={T1,T2,T3,…,Tn}。那么對于任務(wù)Jm,其任務(wù)量Rm可由式(4)得到:

        (4)

        其中,R0為單位任務(wù)量,C0為測試任務(wù)的復(fù)雜度,Cm為任務(wù)Jm的復(fù)雜度。任務(wù)Jm的期望完成時間Tm可由式(5)得到:

        (5)

        其中,T0為測試任務(wù)實(shí)際運(yùn)行時間,α的取值為經(jīng)驗(yàn)值。

        管理服務(wù)器通過任務(wù)預(yù)估模塊得到任務(wù)量R和期望完成任務(wù)所需時間為T后,根據(jù)實(shí)時記錄的服務(wù)器負(fù)載指標(biāo)v,開始構(gòu)建二部圖。一般的圖可由G={V,E}表示,其中V為圖G的頂點(diǎn)集合,E為圖G的邊集合,由此管理服務(wù)器以服務(wù)器集合S和任務(wù)集合J作為圖的頂點(diǎn)集可得無邊圖G,如圖3所示,顯然V=S∪J,E=?。

        然后管理服務(wù)器對所有服務(wù)器和任務(wù)進(jìn)行遍歷,對于任意一個服務(wù)器Si和一個任務(wù)Jm,可由式(6)預(yù)估服務(wù)器Si、執(zhí)行任務(wù)Jm、實(shí)際所需時間tim:

        圖3 以集合S和集合J為頂點(diǎn)的無邊圖G

        (6)

        若tim≤Tm,則表示服務(wù)器Si能夠勝任任務(wù)Jm的工作,即預(yù)計(jì)服務(wù)器Si能在任務(wù)Jm的期望時間Tm內(nèi)完成該任務(wù),并將圖G中的頂點(diǎn)Si和頂點(diǎn)Jm相連,得到一條邊e=SiJm,將e加入圖G的邊集合中,即E=E∪e;若tim>Tm,則表示以服務(wù)器Si當(dāng)前的負(fù)載狀態(tài)無法及時地完成任務(wù),那么圖G中的頂點(diǎn)Si和頂點(diǎn)Jm不相連。上述遍歷完成后即可得到服務(wù)器S與任務(wù)J的二部圖G,如圖4所示。對于服務(wù)器Si,若與之相連的頂點(diǎn)較多,表示當(dāng)前該服務(wù)器負(fù)載較低,能勝任較多的任務(wù);若與之相連的頂點(diǎn)較少,表示當(dāng)前該服務(wù)器負(fù)載較高,只能勝任部分任務(wù);若沒有與之相連的頂點(diǎn),表示當(dāng)前該服務(wù)器負(fù)載較高,暫時不接收任務(wù)。

        圖4 服務(wù)器S與任務(wù)J的二部圖G

        管理服務(wù)器得到二部圖G后,根據(jù)深度優(yōu)先的Edmonds的匈牙利算法求二部圖G的最大匹配。遍歷頂點(diǎn)集合S,使頂點(diǎn)Si依次與集合J中的頂點(diǎn)進(jìn)行匹配,若頂點(diǎn)Si與頂點(diǎn)Jm相連,且頂點(diǎn)Jm還未與集合S中的其他頂點(diǎn)匹配,則邊e=SiJm為一條匹配邊,并開始匹配集合S的下個頂點(diǎn);若頂點(diǎn)Si與頂點(diǎn)Jm相連,但頂點(diǎn)Jm已經(jīng)與集合S中的其他頂點(diǎn)匹配,則尋找其増廣路,若找到増廣路,則將増廣路的匹配邊變成未匹配邊,而未匹配邊變成匹配邊,例如找到一條増廣路Si-J1-S1-Ji,則該増廣路匹配邊S1J1變成未匹配邊,未匹配邊SiJ1和S1Ji變成匹配邊,并開始匹配集合S的下個頂點(diǎn);若找不到増廣路,則頂點(diǎn)Si沒有匹配邊。集合S遍歷完后,所有匹配邊的集合即為二部圖G的最大匹配M={SiJm,…}。對于M中的匹配邊SiJm,表示以服務(wù)器Si當(dāng)前的負(fù)載狀況能勝任任務(wù)Jm。

        管理服務(wù)器得到構(gòu)建的二部圖G的最大匹配M后,由任務(wù)分配模塊按照M中的匹配邊SiJm,將任務(wù)Jm發(fā)送至服務(wù)器Si進(jìn)行執(zhí)行。若任務(wù)集合J中存在沒有匹配邊的任務(wù),則將該任務(wù)移至任務(wù)隊(duì)列隊(duì)首,重新進(jìn)行二部圖構(gòu)建和求最大匹配流程。

        在整個算法流程中,構(gòu)建二部圖需要對每個服務(wù)器與每個任務(wù)之間進(jìn)行判斷,因此對于n個服務(wù)器和n個任務(wù),其時間復(fù)雜度為O(n2)。對二部圖最大匹配采用深度優(yōu)先匈牙利算法求解時,二部圖一邊有n個點(diǎn),最多找到n條増廣路,若二部圖構(gòu)建完成后有x條邊,那么每條増廣路把所有邊遍歷一遍,其時間復(fù)雜度為O(nx)。而根據(jù)二部圖構(gòu)建流程,二部圖中最多存在n2條邊,因此最壞時間復(fù)雜度為O(n3),所以整個算法流程的最高時間復(fù)雜度為O(n3)。由于服務(wù)器集群的應(yīng)用場景中服務(wù)器個數(shù)主要為一位數(shù)或兩位數(shù),所以管理服務(wù)器能很快計(jì)算出最大匹配。

        重復(fù)上述算法流程,管理服務(wù)器即可將任務(wù)隊(duì)列中的任務(wù)分配至各個服務(wù)器中執(zhí)行,同時低負(fù)載的服務(wù)器更容易匹配到任務(wù)量較大且期望時間較短的任務(wù),高負(fù)載的服務(wù)器更容易匹配到任務(wù)量小且期望時間較長的任務(wù),甚至不會匹配到任務(wù),由此可以實(shí)現(xiàn)任務(wù)并發(fā)時服務(wù)器集群中各服務(wù)器間的負(fù)載均衡。

        3 算法仿真與性能分析

        本文采用Java語言編寫管理服務(wù)器和服務(wù)器集群的程序,系統(tǒng)采用1個管理服務(wù)器和4個服務(wù)器組成的服務(wù)器集群,服務(wù)器配置參數(shù)如表1所示。

        表1 服務(wù)器配置

        基于本文算法,通過向管理服務(wù)器分別發(fā)送500、1 000、1 500個任務(wù)的任務(wù)隊(duì)列,運(yùn)行20 s后每隔5 s記錄服務(wù)器的負(fù)載指標(biāo),比較不同取值對本文算法的影響,結(jié)果如圖5所示。由圖5可知,當(dāng)向管理服務(wù)器發(fā)送500個任務(wù)時,α取0.667的負(fù)載指標(biāo)方差大部分時間都低于其他取值的負(fù)載指標(biāo)方差;當(dāng)向管理服務(wù)器發(fā)送1 000個任務(wù)時,α取0.667的負(fù)載指標(biāo)方差大部分時間都低于或接近其他取值的負(fù)載指標(biāo)方差;當(dāng)向管理服務(wù)器發(fā)送1 500個任務(wù)時,20~50 s內(nèi)4種取值的負(fù)載指標(biāo)方差都變化較大,50 s后α取0.667和0.833的大部分時間都低于其他取值的負(fù)載指標(biāo)方差。

        服務(wù)器分別完成500、1 000、1 500個任務(wù)所消耗的時間如表2所示。由表2可知,當(dāng)α取0.667時,服務(wù)器完成所有任務(wù)消耗時間較少。綜合圖5和表2,當(dāng)本文算法的α值取0.667時,服務(wù)器擁有較好的負(fù)載均衡度,且完成任務(wù)消耗時間較少。

        表2 不同α值服務(wù)器完成任務(wù)消耗時間

        以下實(shí)驗(yàn)本文算法的α值均取0.667。通過向管理服務(wù)器發(fā)送500、1 000、1 500個任務(wù)的任務(wù)隊(duì)列,對常見的加權(quán)輪詢調(diào)度算法、最小連接數(shù)算法和

        (a) 500個任務(wù)

        (b) 1 000個任務(wù)

        基于排隊(duì)論綜合指標(biāo)評估的動態(tài)負(fù)載均衡算法(以下簡稱排隊(duì)論算法)與本文算法進(jìn)行仿真分析,運(yùn)行20 s后每隔5 s記錄服務(wù)器的負(fù)載指標(biāo),通過負(fù)載指標(biāo)的方差評估服務(wù)器的負(fù)載均衡情況,實(shí)驗(yàn)結(jié)果如圖6所示。由圖6可知,在3個不同任務(wù)隊(duì)列的情況下,運(yùn)行20 s后本文算法負(fù)載指標(biāo)的方差大部分時間都低于加權(quán)輪詢調(diào)度算法、最小連接數(shù)算法和排隊(duì)論算法,說明采用本文算法的服務(wù)器集群負(fù)載均衡度更好。

        (a) 500個任務(wù)

        (b) 1 000個任務(wù)

        (c) 1 500個任務(wù)

        3種算法完成500、1 000、1 500個任務(wù)所消耗的時間如表3所示。根據(jù)表3數(shù)據(jù),當(dāng)任務(wù)數(shù)量較少時,由于加權(quán)輪詢算法未考慮服務(wù)器實(shí)時的負(fù)載狀態(tài),最小連接數(shù)算法和本文算法均優(yōu)于加權(quán)輪詢算法,但此時本文算法和最小連接數(shù)算法差距不大;當(dāng)任務(wù)數(shù)量逐漸增大時,本文算法逐漸優(yōu)于最小連接數(shù)算法,消耗的時間更少。

        表3 完成隊(duì)列所有任務(wù)消耗的時間

        4 結(jié) 論

        針對服務(wù)器集群系統(tǒng)中管理服務(wù)器調(diào)度任務(wù)的場景,本文提出了一種基于二部圖最大匹配的動態(tài)負(fù)載均衡算法,以二部圖的匹配結(jié)果作為管理服務(wù)器的調(diào)度方案。仿真實(shí)驗(yàn)結(jié)果表明,該算法與加權(quán)輪詢調(diào)度算法、最小連接數(shù)算法和基于排隊(duì)論綜合指標(biāo)評估的動態(tài)負(fù)載均衡算法相比,能使服務(wù)器擁有更好的負(fù)載均衡度;而且對于相同數(shù)量的任務(wù)隊(duì)列,采用該算法的服務(wù)器集群能更快地完成所有任務(wù)。

        由于通過二部圖求出的最大匹配不一定是完美匹配,于是就存在取出的任務(wù)未匹配到服務(wù)器的情況,本文算法將該任務(wù)放回任務(wù)隊(duì)列,容易導(dǎo)致該任務(wù)的響應(yīng)時間過長,今后可以在這類任務(wù)的處理上對算法進(jìn)行改進(jìn)和優(yōu)化;本文算法求解二部圖最大匹配的計(jì)算復(fù)雜度與服務(wù)器數(shù)量相關(guān),當(dāng)服務(wù)器規(guī)模較大時,算法效率將下降,因此對求二部圖最大匹配的匈牙利算法的改進(jìn)也是本文算法的重要優(yōu)化方向之一。

        猜你喜歡
        任務(wù)量頂點(diǎn)集群
        戰(zhàn)時裝備修理任務(wù)量計(jì)算研究?
        過非等腰銳角三角形頂點(diǎn)和垂心的圓的性質(zhì)及應(yīng)用(下)
        基于模糊層次分析法的通信裝備維修任務(wù)量建模方法
        軟件(2020年3期)2020-04-20 01:45:06
        海上小型無人機(jī)集群的反制裝備需求與應(yīng)對之策研究
        關(guān)于頂點(diǎn)染色的一個猜想
        一種無人機(jī)集群發(fā)射回收裝置的控制系統(tǒng)設(shè)計(jì)
        電子制作(2018年11期)2018-08-04 03:25:40
        員工績效考核管理制度研究
        Python與Spark集群在收費(fèi)數(shù)據(jù)分析中的應(yīng)用
        勤快又呆萌的集群機(jī)器人
        基于定性與定量分析的聯(lián)絡(luò)中心任務(wù)量預(yù)測法
        美腿丝袜中文字幕在线观看| 久久久精品人妻久久影视| 亚洲AV色无码乱码在线观看| 国产成社区在线视频观看| 一区二区激情偷拍老牛视频av| 国产乱人伦偷精品视频免观看 | 亚洲av午夜成人片精品电影| 超薄丝袜足j好爽在线观看| 伊人精品无码AV一区二区三区| 亚洲天堂色婷婷一区二区| 国产肥熟女免费一区二区| 韩日午夜在线资源一区二区| 日韩国产欧美视频| 国产成人午夜av影院| 国产免费二区三区视频| 久久香蕉国产线看观看精品yw| 在线视频一区色| 国产美女高潮流白浆免费观看| 91精品人妻一区二区三区久久久| 免费1级做爰片1000部视频| 被黑人做的白浆直流在线播放| 日韩精品中文字幕免费人妻| 成人性生交大片免费入口| 一边吃奶一边摸做爽视频| 国产成人美女AV| 91青青草手机在线视频| 欧洲美女熟乱av| 精品国产一区二区三区久久狼 | 高清亚洲精品一区二区三区| 久久人妻av无码中文专区| a级毛片无码免费真人| 国产精品入口蜜桃人妻| 日韩不卡一区二区三区色图| 中国老熟妇506070| 国产精品视频牛仔裤一区| 久久九九av久精品日产一区免费 | 极品白嫩的小少妇| 亚洲精品中文字幕无乱码麻豆| 午夜男女视频一区二区三区| 天天干天天日夜夜操| 人妻少妇邻居少妇好多水在线|