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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux TCP server系列(4)-浅谈listen与大并发TCP连接

發布時間:2023/12/10 linux 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux TCP server系列(4)-浅谈listen与大并发TCP连接 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景:

???服務器在調用listenaccept后,就會阻塞在accept函數上,accpet函數返回后循環調用accept函數等待客戶的TCP連接。如果這時候又大量的用戶并發發起connect連接,那么在listen有隊列上限(最大可接受TCP的連接數)的情況下,有多少個connect會成功了。試驗證明,當連接數遠遠高于listen的可連接數上限時,客戶端的大部分TCP請求會被拋棄,只有當listen監聽隊列空閑或者放棄某個連接時,才可以接收新的連接,那么我們應該如何來避免這種情況出現?

?

分析:

(一)客戶端

客戶端運行初期完成所設定的一定量的socket創建和相應的處理線程的創建,然后使用條件變量來完成線程同步,直到最后一個線程創建完成,才向所有線程發出廣播通知,讓所有線程并發調用connect,連接成功則關閉連接,失敗則返回,如下代碼所示。

socket創建和線程創建:

????????int testCount=300;????????//并發用戶數

/*

每個進程需要自己獨立的棧空間,linux下默認棧大小是10M,在32位的機子上一個進程需要4G的內存空間,去掉自己的棧空間全局程序段空間,一般只有3G內存可以用,創建線程時就需要從這3G的空間中分配10M出來,所以最多可以分配300個線程。當然這里還可以使用多個進程,每個進程300個線程的方式來進一步擴大并發量。

*/

????????int sockfd[testCount];

????????pthread_t ntid[testCount];

?

????????bzero(&servaddr,sizeof(servaddr));

????????servaddr.sin_family=AF_INET;

????????servaddr.sin_port=htons(SERVER_PORT);

????????inet_pton(AF_INET,argv[1],&servaddr.sin_addr);

?

?????int testCaseIndex=0;

?????for(testCaseIndex=0;testCaseIndex<testCount;testCaseIndex++)

?????{

????????sockfd[testCaseIndex]=socket(AF_INET,SOCK_STREAM,0);

?????????????????????//為每個并發客戶端創建一個socket

????????if(sockfd[testCaseIndex]==-1)

????????{

???????????printf("socket established error: %s\n",(char*)strerror(errno));

???????????return -1;

????????}

????????if( pthread_create(&ntid[testCaseIndex],NULL,handleFun,&sockfd[testCaseIndex])!=0)

?{

????????????????printf("create thread error :%s\n",strerror(errno));

????????????????return -1;

?}

//為每個并發客戶端創建一個線程來執行connect

}

?

?????printf("%d client has initiated\n",testCaseIndex);

?

???并發客戶端的線程實現:線程阻塞在條件變量上(只有條件滿足了并且發起喚醒動作,線程才開始執行)。

????????int sockfd=*((int*)arg);

????????{

????????????????pthread_cond_wait(&cond,&mut);

?????????????????????????????????????//在條件變量上等待條件滿足!

//阻塞返回后立即解鎖,防止互斥量加鎖帶來的阻塞

pthread_mutex_unlock(&mut);

int conRes=0;

????????????????conRes=connect(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr));

?????????????????????????????????????//線程執行connect連接,每個線程在接到喚醒信號后,才可以執行該語句,來模擬多個線程的并發調用。

????????????????if(conRes==-1)

????????????????{

??????????????????printf("connect error: %s\n",strerror(errno));

??????????????????return 0;

????????????????}

????????}

?

???當條件滿足時,喚醒阻塞在條件變量上的線程:

???while(1)

{

sleep(2);

pthread_cond_broadcast(&cond);??//在所有線程創建完成后才進行喚醒。

}

?

綜上,客戶端模擬并發過程中沒有存在不同步的情況導致上述性能問題。(注意,在廣播的時候,會出現廣播丟失的情況,所以需要多次執行廣播操作才會使得所有線程執行任務,所以某種程度上這里并不能模擬完完全全的并發)

?

???(二)通信中介

客戶端和服務器之間的連接是在同一臺機器上,使用Socket方式通信的話會經過127.0.0.1的回環線路,不會有網卡等硬件資源的訪問性能消耗,所以不存在網絡通信時延等問題。

?

???(三)服務器?

性能問題主要發生在服務器,可能是以下幾部分造成:

1)服務器的監聽隊列?listen(listenfd,xxx),參數2指定隊列內所能容納的元素的最大值,當來不及從隊列中移除元素時(調用accept移除或者TCP自動放棄)就會造成隊列滿而使得一些請求丟失。

解決辦法:

a)增大隊列容量是一種辦法,但是注意等待隊列太會帶來效率的性能缺陷,而且listen函數對最大隊列容量有一個上限,大小為SOMAXCONN,當然必要時刻我們可以修改這個常量的大小。
??b)直接修改listen及相關函數的實現(比較麻煩,不建議),可以將listen所維護的隊列修改為linklist,支持隊列的動態增長。

?

2accept處理速度太慢,導致阻塞過長時間,使得隊列無法及時清空已經完成3次連接的socket。也就是任意兩個accept之間的時間間隔是關鍵因素(這里實驗了將accept后面的也刪了,那么10個可以達到153的數目),如下面代碼所示(listen之后在循環調用accept來將已完成3次握手的連接從listen所維護的隊列中移除。)

listen(listenfd,10);

for(;;)

{

??????chilen=sizeof(chiaddr);

connfd=accept(listenfd,(struct sockaddr*)&chiaddr,&chilen);

//其他操作

}

?

解決辦法:

a?兩個accept之間盡量不要又多余的操作,使得accept返回后可以立刻執行下一個accept經過試驗,該方法可以較好的提高性能,減少connect的丟失數。

?

b

???本質上這是一種“生產者-消費者”的模式,listen維護“已連接”和“待連接”的隊列,當客戶發出連接請求并最終連接成功時,在“已連接”隊列中會生產一個“product”,然后這時候希望“消費者”也就是accept函數可以快速的從隊列中消費這個“product,這樣就不會因為隊列滿而導致無法繼續生產(也就是客戶的connect會失效,導致上面隊列長度10300個并發connect帶來的67個存活的情況),但是在本例情況下,我們無法控制生產者的瘋狂生產行為,因為連接是客戶發起的,這是不可預知的,所以我們如果想不修改listen函數來提高性能的話,那么就只能讓消費者更加快的把產品消耗掉,使得listen隊列可以容納更多的新生產的產品,而第一種加快消費者消耗產品的方法就是a,第二種加快消費者消耗產品的方法是我們可以增加多幾個消費者來幫忙消耗,但是這幾個消費者間也要好好協調。第三種方法是讓消費者把產品先移走為listen的隊列騰出空間,再自行處理產品,如d所示。

使用多線程策略,每個線程獨立調用accept(花了一個上午的時候正glib的線程池,一直用不了,其他都正常,就是線程不啟動,不知道會不會是bug)

下面自己手動使用簡單的多線程來測試

線程數????????????????隊列容量???????????????????并發用戶數??????????????通過數

1????????????????????????????10?????????????????????????????????300??????????????????????????????65

2????????????????????????????10?????????????????????????????????300??????????????????????????????142

3????????????????????????????10?????????????????????????????????300??????????????????????????????122

6????????????????????????????10?????????????????????????????????300??????????????????????????????120

10??????????????????????????10?????????????????????????????????300??????????????????????????????196

?20??????????????????????????10?????????????????????????????????300??????????????????????????????174

可以看到線程間也會出現競爭現象,并不是說一味增大并發線程數就可以提高并發數的。

?

c

修改listenaccept的實現方式,讓listen所維護的隊列可以智能的判斷擁擠情況,從而對accept的調用做出調度,在隊列繁忙時,使用多線程的方式讓多個accept來移除隊列中的元素,在隊列空閑時,可以適當的調整accept的處理線程數,這也是一種線程池的實現。

?

?

??d

修改accept的實現方式,在accept中實現一個“消費緩沖區”,為的是及時將listen中的隊列元素移動到該緩沖區中,再由其他處理線程或者進程來對緩沖區中的元素進行處理,這個方法盡量讓listen隊列中已連接的socket可以被移除。

最后這個方法比較上述方法來說是比較好的一種,但是還是需要修改已有的代碼。

?server.cpp
?#include<sys/types.h>
?#include<sys/socket.h>
?#include<strings.h>
?#include<arpa/inet.h>
?#include<unistd.h>
?#include<stdlib.h>
?#include<stdio.h>
?#include<string.h>
?#include<errno.h>
?#include<signal.h>
?#include<sys/wait.h>
?#include<pthread.h>
?
?#define LISTEN_PORT 84
?void str_echo(int sockfd) ? ? ? ? ? ?// 服務器收到客戶端的消息后的響應
?{
? ? ?ssize_t n;
? ? ?char line[512];
?
? ? ?printf("ready to read\n");
?
? ? ?while( (n=read(sockfd,line,512))>0 )
? ? ?{
?
? ? ? ? ?line[n]='\0';
? ? ? ? ?printf("Client: %s\n",line);
?
? ? ? ? ?char msgBack[512];
? ? ? ? ?snprintf(msgBack,sizeof(msgBack),"recv: %s\n",line);
? ? ? ? ?write(sockfd,msgBack,strlen(msgBack));
? ? ? ? ?bzero(&line,sizeof(line));
?
? ? ?}
?
? ? ?printf("end read\n");
?
?}
?
?void sig_child(int signo) ? ? ? ? //父進程對子進程結束的信號處理
?{
? ? ?pid_t pid;
? ? ?int ? stat;
?
? ? ?while( (pid=waitpid(-1,&stat,WNOHANG))>0)
? ? ?printf("child %d terminated\n",pid);
?
? ? ?return;
?}
?
?void* acceptThreadFun(void *arg)
?{
? ? ?int listenfd=*((int*)arg);
? ? ?struct sockaddr_in chiaddr;
? ? ?socklen_t chilen;
? ? ?int connfd;
? ? ?for(;;)
? ? ?{
? ? ? ? ?chilen=sizeof(chiaddr);
? ? ? ? ?
? ? ? ? ?connfd=accept(listenfd, (struct sockaddr*)&chiaddr, &chilen);
? ? ? ? ?//accept會總listen所維護的已連接隊列中pop一個出來
? ? ? ? ?//阻塞在accept,直到三次握手成功了才返回
? ? ? ? ?if(connfd==-1)
? ? ? ? ?printf("accept client error: %s\n",strerror(errno));
? ? ? ? ?else ? ? ? ? ? ?
? ? ? ? ?printf("client connected :%d\n",1);
?
? ? ? ? ?close(connfd);
? ? ? ? ?
? ? ?}
?}
?int successCount=0;
?int main(int argc, char **argv)
?{
? ? ?int listenfd, connfd;
? ? ?pid_t childpid;
? ? ?socklen_t chilen;
?
? ? ?struct sockaddr_in chiaddr,servaddr;
?
? ? ?listenfd=socket(AF_INET,SOCK_STREAM,0);
? ? ?if(listenfd==-1)
? ? ?{
? ? ? ? ?printf("socket established error: %s\n",(char*)strerror(errno)); ? ? ? ? ? ? ? ? //后面需要采用日志到方式來記錄
? ? ? ? ?//socket創建失敗后可以讓用戶選擇重新連接
? ? ?}
?
? ? ?bzero(&servaddr,sizeof(servaddr));
? ? ?servaddr.sin_family=AF_INET;
? ? ?servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
? ? ?servaddr.sin_port=htons(LISTEN_PORT);
?
? ? ?int bindc=bind(listenfd,(struct sockaddr *)&servaddr,sizeof(servaddr));
? ? ?if(bindc==-1)
? ? ?{
? ? ? ? ?printf("bind error: %s\n",strerror(errno));
? ? ? ? ?//綁定失敗,錯誤提示
? ? ?}
?
? ? ?listen(listenfd,10); ? ? ? ? ? ? ? //limit是SOMAXCONN
?
? ? ?signal(SIGCHLD,sig_child);
?
? ? ?pthread_t acceptThread[20];
? ? ?int threadCount=0;
? ? ?for(threadCount;threadCount<20;threadCount++)
? ? ?{
? ? ? ? ?err=pthread_create(&acceptThread[threadCount],NULL,acceptThreadFun,&listenfd); ? ?//創建線程來幫忙accept
? ? ? ? ?if(err!=0)
? ? ? ? ?printf("can not create thread : %s\n",strerror(errno));
? ? ?}
?
? ? ?for(;;)
? ? ?{
? ? ? ? ?chilen=sizeof(chiaddr);
? ? ? ? ?
? ? ? ? ?connfd=accept(listenfd,(struct sockaddr*)&chiaddr,&chilen);
? ? ? ? ?//accept會總listen所維護的已連接隊列中pop一個出來
? ? ? ? ?//阻塞在accept,直到三次握手成功了才返回
? ? ? ? ?if(connfd==-1)
? ? ? ? ?printf("accept client error: %s\n",strerror(errno));
? ? ? ? ?else ? ? ? ?
? ? ? ? ?printf("client connected :%d\n",++successCount);
? ? ? ? ?
? ? ? ? ?close(connfd);
? ? ? ? ?
? ? ?}
?
?}


#include<sys/types.h> 2 #include<stdlib.h> 3 #include<stdio.h> 4 #include<unistd.h> 5 #include<sys/socket.h> 6 #include<strings.h> 7 #include<string.h> 8 #include<arpa/inet.h> 9 #include<errno.h> 10 #include<stdio.h> 11 #include<pthread.h> 12 #include<algorithm> 13 14 #include<exception> 15 16 #define SERVER_PORT 84 17 18 pthread_mutex_t mut=PTHREAD_MUTEX_INITIALIZER; //互斥量 19 pthread_cond_t cond=PTHREAD_COND_INITIALIZER; //條件變量 20 21 int cond_value=1; 22 struct sockaddr_in servaddr; 23 24 void *handleFun(void *arg) 25 { 26 int sockfd=*((int*)arg); 27 28 { 29 pthread_cond_wait(&cond,&mut); 30 pthread_mutex_unlock(&mut); 31 //信號會丟失,使得這里永遠醒不了,所以需要重發信號. 32 33 int conRes=0; 34 conRes=connect(sockfd,(struct sockaddr *)&servaddr,sizeof(servaddr)); 35 36 printf("%d\n",sockfd); //如果不加connect,那么這里顯示正確 37 if(conRes==-1) 38 { 39 printf("connect error: %s\n",strerror(errno)); 40 return 0; 41 } 42 43 } 44 45 } 46 47 void *handleFun2(void *arg) 48 { 49 *((int*)arg)=2; 50 pthread_cond_broadcast(&cond); 51 } 52 53 int main(int argc, char **argv) 54 { 55 int testCount=300; 56 int sockfd[testCount]; 57 pthread_t ntid[testCount]; 58 59 //tcpcli <ipaddress> <data> 60 if(argc!=3) 61 return -1; 62 63 bzero(&servaddr,sizeof(servaddr)); 64 servaddr.sin_family=AF_INET; 65 servaddr.sin_port=htons(SERVER_PORT); 66 inet_pton(AF_INET,argv[1],&servaddr.sin_addr); 67 68 int testCaseIndex=0; 69 for(testCaseIndex=0;testCaseIndex<testCount;testCaseIndex++) 70 { 71 sockfd[testCaseIndex]=socket(AF_INET,SOCK_STREAM,0); 72 //為每個客戶端線程創建socket 73 if(sockfd[testCaseIndex]==-1) 74 { 75 printf("socket established error: %s\n",(char*)strerror(errno)); 76 77 return -1; 78 } 79 80 if(pthread_create(&ntid[testCaseIndex],NULL,handleFun,&sockfd[testCaseIndex])!=0) 81 //客戶端線程 82 { 83 printf("create thread error :%s\n",strerror(errno)); 84 return -1; 85 } 86 } 87 88 printf("%d client has initiated\n",testCaseIndex); 89 90 cond_value=2; 91 while(1) 92 { 93 sleep(2); 94 pthread_cond_broadcast(&cond); //條件滿足后發信號通知所有阻塞在條件變量上的線程! 95 } 96 exit(0); 97 }

總結

以上是生活随笔為你收集整理的Linux TCP server系列(4)-浅谈listen与大并发TCP连接的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

精品久久亚洲 | 国产成人精品综合久久久久99 | 日韩免费一级a毛片在线播放一级 | 91精品啪在线观看国产81旧版 | 一级黄色大片在线观看 | 91在线免费播放视频 | 亚洲精品动漫成人3d无尽在线 | 日韩av中文在线 | 日韩有码在线观看视频 | 日日干日日色 | 久久精品99国产精品酒店日本 | www.国产高清| 日韩h在线观看 | 日韩久久精品一区 | 国产精品乱码久久久久 | 91传媒免费在线观看 | 99久精品视频 | 国产黄色在线网站 | 97韩国电影| 黄色网址中文字幕 | 免费黄av | 韩国av一区二区 | 在线观看成人av | 麻豆视传媒官网免费观看 | 精品美女国产在线 | 国产老太婆免费交性大片 | 免费观看9x视频网站在线观看 | 五月天婷婷在线播放 | 亚洲一区视频在线播放 | av在线电影网站 | 黄色大全免费观看 | 国产色影院 | 一区二区三区高清在线观看 | 天天射天天艹 | 精品国产aⅴ麻豆 | 国产又粗又长又硬免费视频 | 欧美在线视频一区二区三区 | 一二三四精品 | 一区二区三区在线观看免费 | 日韩欧美一区二区三区免费观看 | 欧洲av在线 | 亚洲激情在线 | 偷拍精偷拍精品欧洲亚洲网站 | 视频在线观看入口黄最新永久免费国产 | 2021国产视频 | 亚洲日本一区二区在线 | 99视频精品视频高清免费 | 亚洲精品小视频 | 久久国产经典 | 成人免费在线网 | 人人干人人草 | 69亚洲乱 | 888av | 中文字幕免费 | 国产精品一区二区av日韩在线 | 成人国产网站 | 午夜视频在线观看欧美 | 二区三区视频 | 国产免费国产 | 国产精品手机看片 | 九九在线免费视频 | 成人性生交大片免费看中文网站 | 久久综合丁香 | 成人av免费在线 | 成人在线免费观看视视频 | 国产在线色站 | 日韩欧美一区二区三区视频 | 欧美成人播放 | 色综合天天综合在线视频 | 美女福利视频一区二区 | 国产日产精品久久久久快鸭 | 日本精品免费看 | 日韩av在线小说 | 日韩中文字幕第一页 | 久久第四色 | 欧美日韩免费在线视频 | 日本女人在线观看 | a色视频| 亚洲精品在线观看视频 | 丁香六月婷 | 久久人人看| 亚洲自拍av在线 | 国产精品原创在线 | 久久精品中文字幕少妇 | 视频在线观看入口黄最新永久免费国产 | 免费av电影网站 | 亚洲国产中文字幕在线 | 精品国精品自拍自在线 | 国产精品一区二区在线播放 | 色婷婷激婷婷情综天天 | 久草视频视频在线播放 | 在线观看电影av | 99精品视频在线观看视频 | 黄av资源| 国产香蕉久久精品综合网 | 中文字幕美女免费在线 | 久久电影日韩 | 91插插插免费视频 | 精品久久精品 | 激情综合久久 | 久草在线手机视频 | 日韩精品视频免费看 | 91视频国产高清 | 中文字幕在线免费观看视频 | 婷婷免费视频 | 亚洲天堂网视频 | 免费看一级片 | 久久久久久久久艹 | 久久精品美女 | 成人播放器| 色小说在线 | 久久精品国亚洲 | 96亚洲精品久久 | 国内综合精品午夜久久资源 | 亚洲高清精品在线 | 人人看人人做人人澡 | 97精品国产97久久久久久久久久久久 | 国产在线播放不卡 | 国产精品美女久久久久久免费 | 夜色资源站国产www在线视频 | 日日夜夜噜噜噜 | 国产免费观看高清完整版 | 国产精品免费高清 | 欧洲在线免费视频 | 91在线视频免费观看 | 日韩试看| 久久dvd| 天天色天天搞 | 欧美亚洲成人免费 | 久久99久久99精品免观看粉嫩 | 国产亚洲激情视频在线 | 成人av资源在线 | 亚洲黄色激情小说 | 国产中文| 天天狠狠 | 狠狠色狠狠色综合系列 | 很黄很污的视频网站 | 在线免费av电影 | 91视频在线免费看 | 五月激情综合婷婷 | 日韩一区二区免费视频 | 91精品啪在线观看国产线免费 | 国产精品久久久久久久久久了 | a级国产乱理论片在线观看 特级毛片在线观看 | 黄色视屏免费在线观看 | 欧美一区二区三区四区夜夜大片 | 欧美日韩高清一区二区 国产亚洲免费看 | 一区二区三区日韩在线 | 97久久久免费福利网址 | 国产91丝袜在线播放动漫 | 久久久午夜精品理论片中文字幕 | 日本aaaa级毛片在线看 | 日韩无在线| 国产在线播放观看 | 9在线观看免费高清完整版在线观看明 | 青青河边草手机免费 | 久久最新网址 | 免费在线日韩 | 国产精品一区二区三区久久久 | 色在线视频| 四虎成人精品永久免费av九九 | 日韩精品五月天 | 最新日韩在线观看视频 | 日本bbbb摸bbbb | 久久的色| 久草网站在线观看 | 全黄色一级片 | 综合精品久久 | 一级黄色片在线免费观看 | 青青草久草在线 | 国产一级免费电影 | 就要干b | 波多野结衣电影一区二区三区 | 午夜精品一区二区三区免费 | 成人av在线网 | 狠狠综合久久 | 欧美精品久久久久久久久老牛影院 | 日本深夜福利视频 | 五月婷婷中文 | 激情网五月| 久久不色 | 国产在线a| 免费日韩 精品中文字幕视频在线 | 日韩精品一区二区三区丰满 | 天天曰夜夜爽 | 午夜精品一区二区三区在线播放 | 亚洲欧美日本一区二区三区 | 天天搞夜夜骑 | 亚洲国产精品激情在线观看 | 成人综合日日夜夜 | 一区二区精品在线视频 | 精品91久久久久 | 9色在线视频 | 最近中文字幕高清字幕在线视频 | 2019天天干天天色 | 在线精品观看 | 欧美人牲 | 成人中文字幕在线观看 | 午夜影院先 | av电影一区二区三区 | 麻豆传媒一区二区 | 在线精品在线 | 日韩亚洲在线观看 | 国产精品美女 | 天天操狠狠操夜夜操 | 国产美女精品视频 | 国产99久久精品一区二区300 | 啪啪动态视频 | 日韩精品一区二区久久 | 国产视频资源在线观看 | 99久久精品免费视频 | 日韩在线精品视频 | 91精品国产高清自在线观看 | 国产91九色蝌蚪 | 91原创在线观看 | 国产成人精品一区二区三区福利 | 欧美日韩成人 | 96亚洲精品久久 | av电影不卡在线 | 免费av观看网站 | 在线观看亚洲国产 | 九九久久国产 | 日韩欧美国产成人 | 亚洲视频每日更新 | 日本在线成人 | av免费黄色 | 中文字幕中文字幕在线一区 | 亚洲3级 | 91视频网址入口 | 噜噜色官网 | 91成年人视频 | 日韩精品久久一区二区 | 伊人伊成久久人综合网小说 | 色综合天天狠狠 | 国产精品久久久毛片 | 91视频 - v11av | 国产福利精品视频 | 黄色的片子 | 国产精品九九久久久久久久 | 久香蕉| 国产久草在线观看 | 久久开心激情 | 亚洲视频精选 | 天堂中文在线视频 | 中文字幕一区二区三区在线视频 | 国产日女人 | 亚洲精品综合一二三区在线观看 | 久久国产精品小视频 | 美女久久久 | 最新av在线播放 | 狠狠狠综合 | 99国产精品免费网站 | 久草电影在线 | 亚洲黄色app| 97精品国产97久久久久久久久久久久 | 91亚洲综合 | 一级淫片在线观看 | 国产精品久久久久久久婷婷 | 黄网站色成年免费观看 | 精品国产午夜 | 国产二区免费视频 | 国内精品久久久久久久影视简单 | 日韩免费视频 | 麻豆视频成人 | 免费在线黄网 | 九色精品免费永久在线 | 爱爱一区 | 中文字幕一区二区三区乱码在线 | 日韩精品免费在线观看视频 | 粉嫩av一区二区三区免费 | 91最新中文字幕 | 国产一级一片免费播放放 | 中文字幕黄色 | 天堂av在线网 | 久久国产精品一国产精品 | 亚洲精品美女久久久久 | 一区二区久久久久 | 青青河边草免费 | 毛片永久免费 | 日本mv大片欧洲mv大片 | 欧美一级大片在线观看 | 热re99久久精品国产99热 | 99精品在线视频播放 | 色综合久久精品 | 欧美日在线 | 国产一区二区精品91 | 成人免费 在线播放 | 欧美色图亚洲图片 | 国产黄色成人 | 91麻豆看国产在线紧急地址 | 久久最新网址 | 亚洲日本va午夜在线影院 | 日韩高清不卡一区二区三区 | 成人国产精品免费 | 少妇高潮流白浆在线观看 | 久久久久久久久亚洲精品 | 国产精品久久毛片 | av电影中文字幕 | 在线观看91网站 | 日日干天天 | 婷婷福利影院 | 中文字幕有码在线播放 | 三级视频国产 | 在线视频日韩 | 亚洲精品美女久久久久网站 | 国产精品美 | 久久xx视频 | 国产在线看一区 | 日韩精品一区二区三区中文字幕 | 香蕉视频91 | 精品免费视频123区 午夜久久成人 | 久久99精品久久久久婷婷 | 久久久久福利视频 | 久久观看免费视频 | 黄色av网站在线观看 | ww视频在线观看 | 亚洲精品456在线播放乱码 | 国产又粗又硬又爽的视频 | 色婷婷视频在线 | 在线观看理论 | 91黄色小网站 | 99久精品 | 国产麻豆剧传媒免费观看 | 91av在线精品 | 不卡电影一区二区三区 | 精品乱码一区二区三四区 | 99视频在线观看视频 | 国产视频 亚洲精品 | 欧美另类交在线观看 | 亚洲欧美国内爽妇网 | 日本在线视频一区二区三区 | 一区二区三区高清在线观看 | 日韩午夜电影网 | 日韩在线观看一区二区 | 激情视频在线高清看 | 91av视频网站| 午夜精品久久久久 | 亚洲在线视频免费观看 | 中文字幕在线视频一区二区三区 | 国产91探花 | 一级a毛片高清视频 | 午夜久久久精品 | 日本成人中文字幕在线观看 | 欧美日韩视频在线观看免费 | 日韩精品在线免费播放 | 中文字幕在线视频一区 | 五月丁香| 免费精品在线 | 亚洲欧美日韩不卡 | 国产精品av免费在线观看 | 在线观看亚洲电影 | 精品视频在线免费观看 | 免费观看日韩av | 免费a级观看| av动图| 国产自产高清不卡 | 日韩高清精品免费观看 | 免费污片 | 综合色在线观看 | 成人在线观看你懂的 | 二区三区在线 | 午夜视频亚洲 | 黄网站色成年免费观看 | 国产小视频免费在线网址 | 77国产精品 | 国产午夜精品免费一区二区三区视频 | 久久精品中文字幕免费mv | 91精品视频一区二区三区 | 中文字幕在线日亚洲9 | 色网站视频 | 亚洲成人精品 | 超碰97人人射妻 | 在线亚洲观看 | 日韩mv欧美mv国产精品 | 亚洲永久精品在线观看 | 亚洲精品小视频在线观看 | 日本黄色大片免费 | 黄色大片视频网站 | 色噜噜在线观看 | 国产福利专区 | 日日干天天射 | 国产精品久久久久毛片大屁完整版 | 久久久免费 | 日韩av在线小说 | 中国精品一区二区 | 三级黄免费看 | 日韩一区二区在线免费观看 | 一级a毛片高清视频 | www.成人sex | 福利一区二区在线 | 欧美日韩视频在线观看免费 | 欧美日韩观看 | 91在线视频观看 | 精品一区二区免费视频 | 精品国产一区二区三区在线观看 | 欧美日韩国产区 | 美女黄频免费 | 日韩视频中文字幕在线观看 | 99视频99| 五月天综合 | 久久久精品国产免费观看一区二区 | 成人小电影在线看 | 一区二区三区韩国免费中文网站 | 国产精品一区二区你懂的 | 国产综合精品一区二区三区 | 波多野结依在线观看 | 黄色电影在线免费观看 | 天天色天天操综合 | 夜夜澡人模人人添人人看 | 日本久久片 | 国产精品18久久久 | 高清中文字幕av | 中日韩免费视频 | 日韩一区二区三区免费视频 | 不卡日韩av | 国产特级毛片 | 国产亚洲精品bv在线观看 | 亚洲免费专区 | 国产精品原创 | 色国产视频| 国产成人免费av电影 | 久久精品一区二区三区中文字幕 | 中文字幕制服丝袜av久久 | 亚洲va欧洲va国产va不卡 | 久久99亚洲精品久久久久 | 国产韩国精品一区二区三区 | 国产99免费 | 国产福利a | 欧美极品少妇xxxx | 激情影院在线观看 | 亚洲人成人99网站 | 97热久久免费频精品99 | 免费麻豆网站 | 三级黄色免费 | 中文字幕精品三级久久久 | 久久一级电影 | 亚洲黄色区 | 亚洲国产成人精品久久 | 亚洲国产视频a | 免费日韩 | 国产免费又粗又猛又爽 | 欧美少妇影院 | 天天爱天天 | 国产精品99久久久久久小说 | 日韩中文字幕国产 | 国产精品久久久久久久久久久久久久 | 精品特级毛片 | 亚洲电影在线看 | 免费看一级黄色大全 | 欧美日韩中文字幕视频 | 97免费在线观看视频 | 国产精品不卡av | 国产精品入口麻豆 | 国产69精品久久99不卡的观看体验 | 久久精品视频日本 | 国产精品一区二区久久精品爱涩 | 亚洲更新最快 | 日韩精品一区二区三区三炮视频 | 亚洲精品啊啊啊 | 亚洲精品一区中文字幕乱码 | 天天色综合1 | 欧美精品一区二区免费 | 在线电影a | 久草视频播放 | 中文字幕日韩免费视频 | 国产亚洲成人网 | 亚洲欧美经典 | 天天干.com | 精品亚洲视频在线观看 | 国产第一页精品 | 成人免费观看大片 | www在线免费观看 | 久久8精品 | 99中文视频在线 | 在线播放一区二区三区 | 亚洲国产精品女人久久久 | 香蕉视频在线视频 | www亚洲视频| 欧美日韩性生活 | 精品一区二区免费视频 | 国产精品理论视频 | 五月天亚洲婷婷 | 成人黄色免费观看 | 欧美大片在线观看一区 | 久操视频在线免费看 | 欧美性久久久久久 | 最近中文字幕大全 | 国产欧美精品一区二区三区四区 | 久久免费视频8 | 久久久在线观看 | 在线观看黄网 | 三级动图 | 久草香蕉在线 | 国产麻豆视频免费观看 | 在线免费三级 | 精品视频在线看 | 性日韩欧美在线视频 | 久久精品国产亚洲 | 天天撸夜夜操 | 狠狠干天天 | 亚洲精品乱码久久久一二三 | 国产伦理精品一区二区 | 最近最新中文字幕视频 | www夜夜操| 成年人免费看片 | 日韩网站在线观看 | 色是在线视频 | 亚洲码国产日韩欧美高潮在线播放 | 日本在线观看视频一区 | 九九涩涩av台湾日本热热 | 国产精品99久久久久久人免费 | 亚洲欧美国产视频 | 国产精品9999久久久久仙踪林 | 波多野结衣精品 | www.亚洲精品视频 | 丁香视频全集免费观看 | 91免费看黄| 免费看三级黄色片 | 激情综合亚洲 | 久久久午夜精品理论片中文字幕 | 五月天婷亚洲天综合网鲁鲁鲁 | av高清影院| 精品国内自产拍在线观看视频 | 欧美另类z0zx| 久久久久久久综合色一本 | 国产三级视频在线 | av在线免费播放网站 | 欧美精品xxx | 中文字幕在线观看91 | 久久这里只有精品首页 | 中文成人字幕 | 天天操天天操一操 | 麻豆观看 | 激情五月开心 | 亚洲国产一二三 | 国产精品入口麻豆www | japanesexxxhd奶水| 免费黄色网止 | 日韩国产欧美视频 | 成人毛片网 | 婷婷伊人综合亚洲综合网 | 91在线精品播放 | 五月婷婷在线视频 | 欧美视频www | 天天色天天射综合网 | 亚洲在线成人精品 | 最近2019好看的中文字幕免费 | 亚洲一区精品二人人爽久久 | 五月天com| 中文字幕免费高清在线 | 国产成人精品亚洲日本在线观看 | 天天干天天操天天 | 亚洲精品在线观看网站 | 成人污视频在线观看 | www.色的| 在线电影 你懂得 | 欧美日韩精品电影 | 欧美性爽爽 | 狠狠干2018 | 国产色妞影院wwwxxx | 日日夜夜免费精品视频 | 一区二区三区中文字幕在线 | 天天爱天天色 | 久久久久视 | 曰韩精品 | 91亚洲精品国偷拍 | 久爱综合 | 91人人爽久久涩噜噜噜 | 又黄又爽又刺激的视频 | 免费激情网 | 麻豆视频免费在线 | 在线观看精品视频 | 久久www免费人成看片高清 | 成人一级免费电影 | 亚洲午夜在线视频 | 国产精品大片免费观看 | 国产精品18久久久久久不卡孕妇 | 狠狠狠色丁香综合久久天下网 | 日韩视频中文字幕在线观看 | www五月天| 91久久人澡人人添人人爽欧美 | 911国产精品 | 国产精品初高中精品久久 | 女人魂免费观看 | 国产xx视频 | 性色av免费在线观看 | 国产又粗又猛又黄又爽 | 欧美日韩久久不卡 | 不卡视频在线 | 国产精品第52页 | 日本护士三级少妇三级999 | 97人人澡人人爽人人模亚洲 | www.777奇米 | 欧美性一级观看 | 成人h动漫在线看 | 久久99免费观看 | 最新av在线网站 | a级一a一级在线观看 | 国产精品一区久久久久 | 欧美日韩不卡在线视频 | 国产91综合一区在线观看 | 亚洲视频久久久久 | 亚洲精品字幕在线 | 最新av观看 | 99精品国产高清在线观看 | 久久tv | 久久成人国产精品免费软件 | 久久这里只有精品23 | 中文字幕丝袜一区二区 | 亚洲成人免费在线 | 欧美中文字幕久久 | 久久久久久国产精品亚洲78 | 欧美色就是色 | 日批视频在线播放 | 日av免费 | 久久这里只有精品首页 | 日本色小说视频 | 精品国产欧美一区二区三区不卡 | 国产黑丝一区二区三区 | 天天插天天 | 六月婷婷久香在线视频 | 日韩av快播电影网 | av免费电影在线 | 国际av在线| 日韩精品中文字幕在线 | 97成人精品区在线播放 | 免费成人在线电影 | 国产福利久久 | 成人在线观看网址 | 一区二区视频在线看 | 韩国av免费看 | 99re6热在线精品视频 | 99视频网站 | 国产精品不卡在线播放 | av在线免费观看网站 | 在线看av的网址 | 国产在线播放一区二区 | 色在线国产 | 91av资源在线 | 久久97久久97精品免视看 | 超碰av在线播放 | 日韩一级成人av | 欧美一级性生活视频 | 永久免费在线 | 五月天,com | 亚洲一区精品人人爽人人躁 | 久草色在线观看 | 91尤物国产尤物福利在线播放 | 天天在线操 | 日韩电影在线观看一区二区 | 国产精品美女免费 | 日本一区二区三区免费看 | 日韩在线观看电影 | 亚洲精品乱码久久久久v最新版 | 国产成人亚洲在线观看 | 国产一区二区精品 | 国产在线1区 | 精品国产aⅴ麻豆 | 日韩av电影免费在线观看 | 久久久久久久久久久高潮一区二区 | 毛片基地黄久久久久久天堂 | 99热国产在线观看 | 欧美一级黄色网 | 一区二区三区在线免费播放 | 日本激情动作片免费看 | 在线免费观看国产 | 91麻豆精品国产91久久久久久 | 国产欧美日韩一区 | 国产成人免费网站 | 亚洲午夜精品久久久久久久久 | 狠狠综合久久 | 91大神在线看 | 日韩精品一区二区三区丰满 | 日韩精品免费在线观看 | 麻豆免费在线播放 | 99视频在线播放 | 干干干操操操 | 97在线观看免费高清完整版在线观看 | 国产在线精品一区 | 欧美精品久久久久久久久久丰满 | 狠狠激情中文字幕 | 91视频中文字幕 | 久久精品香蕉 | 久久视频在线观看中文字幕 | 欧美成人按摩 | a级国产乱理论片在线观看 伊人宗合网 | 国产麻豆果冻传媒在线观看 | 五月香视频在线观看 | 伊人成人激情 | 国产精品久久久777 成人手机在线视频 | 日日干影院 | 国产不卡在线 | 手机av永久免费 | 超级碰碰碰视频 | 成人av一区二区在线观看 | 亚洲一区av| 欧美特一级 | 97视频免费在线观看 | 亚洲黄色小说网址 | 久久九九视频 | 欧美人人 | 久久亚洲国产精品 | 欧洲色综合 | 亚洲精品小视频在线观看 | www日韩在线 | 国产又粗又猛又色又黄视频 | 国产一级二级在线 | 国产精品成人一区二区三区吃奶 | 麻豆传媒视频观看 | 91喷水| 亚洲视频免费 | japanesexxxxfreehd乱熟 | 久久成年视频 | 亚洲国产精品500在线观看 | 国产免费视频一区二区裸体 | 日韩精品在线播放 | 中文字幕电影在线 | 最新高清无码专区 | 久久精品视频在线免费观看 | 久久99影院 | 一级一片免费看 | 五月天久久精品 | 一级a性色生活片久久毛片波多野 | 操操操综合 | 99免费在线观看视频 | 涩涩色亚洲一区 | 久久精品这里热有精品 | 国产精品久久久久久久免费观看 | 五月天六月丁香 | 国产精品视频99 | 久久不卡日韩美女 | 91精品入口 | av一级二级| 黄网站免费大全入口 | 国产精品久久久免费 | 免费网站v | 成人免费视频网址 | 美女黄久久 | 色婷婷成人网 | 亚洲精选99 | 国产视频在线观看一区 | 亚洲精品国产麻豆 | 最近中文字幕在线播放 | 欧美久久久 | 日韩在线电影一区 | 五月天婷婷在线观看视频 | 国产伦精品一区二区三区免费 | 国产在线观看你懂的 | 亚洲成人精品在线观看 | 丁香亚洲 | 久久免视频| 99视频在线精品国自产拍免费观看 | 国内精品久久久久久久久久久 | 亚洲精品午夜久久久久久久 | 亚洲精品网址在线观看 | 日韩字幕 | 日本h在线播放 | 久久99久久99精品中文字幕 | 97品白浆高清久久久久久 | 91理论电影 | 日韩中文字幕在线不卡 | 国产一线在线 | 色姑娘综合网 | 九九免费在线观看视频 | 九九热免费视频在线观看 | 国产精品理论片在线观看 | 黄色一级大片免费看 | 精品国产免费看 | 欧美日韩在线观看视频 | 亚洲精品乱码久久久久久蜜桃91 | 欧美九九九 | 亚洲成人黄色在线观看 | 国产成人亚洲在线观看 | av在线看网站 | 亚洲永久精品在线观看 | 天天干天天干 | 国产精品福利视频 | 亚洲天堂网在线视频 | 天天爽天天射 | www.国产高清 | 婷婷伊人五月天 | 免费精品视频在线 | 天天干天天射天天插 | av性在线| 免费观看成人网 | 国产91对白在线播 | 欧美乱熟臀69xxxxxx | 日韩免费视频观看 | 99视频国产精品免费观看 | 日韩精品欧美精品 | 久久av高清 | 激情五月视频 | 三级视频片 | 婷婷在线网站 | 日韩69视频 | 18pao国产成视频永久免费 | 日批视频在线播放 | 欧美一区二视频在线免费观看 | 天天操网址 | 91一区一区三区 | 精品一区二区av | 精品国产资源 | 国产精品美女999 | 国产探花视频在线播放 | 日韩在线观看视频在线 | 中文字幕在线一区二区三区 | 久久免费国产电影 | 伊人影院得得 | 久久久久 免费视频 | 欧美资源在线观看 | 毛片激情永久免费 | 成人小视频免费在线观看 | 中文字幕av在线不卡 | 亚洲国产精品久久久久婷婷884 | 国产涩图 | 成年人免费在线观看网站 | 国产日本在线观看 | 深爱激情久久 | 日韩欧美一区二区三区在线观看 | 91网址在线观看 | av成人免费在线看 | 国产视频高清 | 中文字幕在线看视频国产 | 国产视频一 | 色综合久久天天 | 国产小视频在线免费观看视频 | 中文字幕久久精品 | 免费在线观看日韩视频 | 一级黄色免费网站 | 91九色porny蝌蚪主页 | 99精品视频网站 | 色多视频在线观看 | 夜夜狠狠| 亚洲色五月 | 美女网站一区 | adn—256中文在线观看 | 在线观看黄网站 | 国产一二三四在线视频 | 91色九色 | 亚洲资源一区 | 亚洲综合激情网 | 99成人在线视频 | 麻豆果冻剧传媒在线播放 | www.eeuss影院av撸 | 亚洲激情p | 高清免费在线视频 | 激情五月婷婷综合网 | 亚洲精品国偷拍自产在线观看蜜桃 | 国产高清日韩欧美 | 亚洲国产精品成人va在线观看 | 国产一区二区高清视频 | 一级黄色片在线免费观看 | av超碰免费在线 | 91久久久久久国产精品 | 狠狠躁天天躁综合网 | 香蕉视频国产在线观看 | 激情 亚洲| 亚洲 欧美 另类人妖 | 国产精品一区二区三区免费看 | 最近乱久中文字幕 | 亚洲国产精品成人女人久久 | 精品美女在线视频 | 一级一级一片免费 | 麻豆视频入口 | 国产精品久久99综合免费观看尤物 | 国产精品一区二区三区免费视频 | 丁五月婷婷 | 韩国一区二区三区在线观看 | 日韩精品一区二区三区免费视频观看 | 国产成人精品综合久久久 | 国产精品色婷婷 | a天堂在线看 | 香蕉精品视频在线观看 | 六月丁香激情网 | 久久男人中文字幕资源站 | 国产色黄网站 | 欧美日韩不卡一区二区 | 国产精品videossex国产高清 | 午夜影院一级片 | 亚洲一区欧美精品 | 亚洲播放一区 | 插久久| www.在线看片.com | 国产精品自在欧美一区 | 狠狠狠色丁香综合久久天下网 | 国产又粗又猛又爽 | 欧美污污视频 | 天天艹 | 免费在线观看视频一区 | 成+人+色综合 | 欧美激情视频在线免费观看 | 日韩女同av | 人人狠 | 亚洲视屏在线播放 | 日韩视频一区二区在线观看 | 成人黄色在线观看视频 | 亚洲精品麻豆视频 | 亚洲国产成人精品在线观看 | 亚洲精品免费在线观看视频 | 婷婷综合影院 | 高清不卡一区二区三区 | 欧美国产一区在线 | 亚洲免费视频观看 | 亚洲一区不卡视频 | 亚洲天堂网站视频 | 五月天丁香视频 | 中文字幕电影网 | 欧美一级视频免费看 | 欧美日韩一区二区在线观看 | 99福利片 | 免费午夜在线视频 | 亚洲高清视频在线 | 久草观看 | 西西www4444大胆在线 | 日本三级中文字幕在线观看 | 中文字幕 国产视频 | 亚洲六月丁香色婷婷综合久久 | 99精品国产成人一区二区 | 日韩色视频在线观看 | 久久国产精品二国产精品中国洋人 | 一本色道久久精品 | 综合色中文| 在线中文日韩 | 免费观看视频的网站 | www.夜夜爽 | 国产精品自拍在线 | 亚洲精品国产欧美在线观看 | 激情五月婷婷综合 | 一区二区三区高清 | 国产美女在线免费观看 | 亚洲乱码久久久 | 国产专区日韩专区 | 91porny九色91啦中文 | 在线激情小视频 | 在线免费av网站 | 久久精品国产亚洲 | 色综合综合 | 国产精品女主播一区二区三区 | a在线观看视频 | 午夜精品成人一区二区三区 | 久久久久国产a免费观看rela | 免费一级特黄录像 | 久草网视频| 91av原创| 久久成人精品电影 | 成人网在线免费视频 | www.久久91| 日韩在线影视 | 伊人一级 | 欧美一二三视频 | 超碰人人超 | 中文字幕在线一区观看 | 日韩激情片在线观看 | 亚洲精品国产自产拍在线观看 | 国产三级香港三韩国三级 | 国产色妞影院wwwxxx | 99精品视频在线观看播放 | 国产四虎在线 | 亚洲一级黄色片 | 六月婷婷久香在线视频 | 亚洲精品黄| 久久免费电影网 | 免费日p视频| 国产成人精品女人久久久 | 亚洲乱码中文字幕综合 | 国产在线观看中文字幕 | av在线播放中文字幕 | 夜夜干夜夜 | 黄色大全视频 | 伊人久久一区 | 亚洲人成在线电影 | 国产精品久久毛片 | 涩涩网站在线观看 | 日韩小视频 | 91传媒免费在线观看 | 成人一级片在线观看 | 丁香电影小说免费视频观看 | 丁香激情五月婷婷 | 97精品视频在线 | 超碰午夜| 久久99国产精品自在自在app | 国产精品99久久久精品 | 国产区在线看 | 蜜臀久久99精品久久久久久网站 | 在线视频日韩一区 | 麻豆久久 | 午夜av不卡| 成人黄色大片 | 欧美日韩国产二区三区 | 人人狠狠综合久久亚洲婷 | 国产日韩欧美视频在线观看 | 伊人亚洲精品 | 99色在线 | 国产精品成人一区二区 | 狠狠狠色丁香婷婷综合久久五月 | 91精品国产电影 | 欧美激情精品久久久久久免费 | 亚洲一区二区三区四区精品 |