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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

2-4:套接字(Socket)编程之TCP通信

發(fā)布時間:2025/3/15 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2-4:套接字(Socket)编程之TCP通信 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 一 TCP通信服務端和客戶端——和UDP區(qū)別
    • (1)服務端
    • (2)客戶端
  • 二:TCP通信-多進程/線程
    • (1)多進程版本
    • (2)多線程版本
    • (3)線程池版本

一 TCP通信服務端和客戶端——和UDP區(qū)別

TCP是面向字節(jié)流的,是有連接的,會在服務端和客戶端之間建立一條連接,而UDP顯得就比較簡單,只負責傳遞。在2-3:套接字(Socket)編程之UDP通信這一節(jié)詳細敘述了UDP通信及套接字相關(guān)內(nèi)容,本節(jié)TCP通信將會在上節(jié)的基礎上,對TCP和UDP中代碼的不同部分做以補充。

(1)服務端

tcpServer.h

#include <iostream> #include <string> #include <unistd.h> #include <cstdio> #include <cstring> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <netinet/in.h> using namespace std;#define BACKLOG 5class tcpServer { private:int _port;int listen_sock; public:tcpServer(int port=8080):_port(port){}void initServer(){listen_sock=socket(AF_INET,SOCK_STREAM,0);//區(qū)別UDP,TCP采用流式套接字if(listen_sock < 0){cout<<"套接字創(chuàng)建失敗"<<endl;exit(2);}struct sockaddr_in local;local .sin_family=AF_INET;local.sin_port=htons(_port);local.sin_addr.s_addr=htonl(INADDR_ANY);if(bind(listen_sock,(struct sockaddr*)&local,sizeof(local)) < 0){cout<<"綁定失敗"<<endl;exit(3);}//開啟監(jiān)聽if(listen(listen_sock,BACKLOG) < 0){cout<<"綁定失敗"<<endl;exit(4);} }//通信服務void Service(int sock){char buffer[1024];while(1){size_t s=recv(sock,buffer,sizeof(buffer)-1,0);//區(qū)別UDPif(s > 0){buffer[s]='\0';cout<<"服務端收到客戶端的消息:"<<buffer<<endl;send(sock,buffer,strlen(buffer),0);//區(qū)別UDP}if(s==0)//客戶端下線,服務端收到0{cout<<"客戶端已經(jīng)下線"<<endl;close(sock);//注意關(guān)閉套接字,資源是有限的break;}}}void startServer(){sockaddr_in endpoint;while(1){//TCP-acceptsocklen_t len=sizeof(endpoint);int _sock=accept(listen_sock,(struct sockaddr*)&endpoint,&len);if(_sock < 0){cout<<"accept失敗"<<endl;continue;}cout<<"一臺新的客戶端已經(jīng)連接"<<endl;//拿到套接字進行通信Service(_sock);}}~tcpServer(){close(listen_sock);} };

1:創(chuàng)建套接字

相較于UDP,TCP通信時選擇的套接字是流式套接字

listen_sock=socket(AF_INET,SOCK_STREAM,0);

2:listen監(jiān)聽
在套接字綁定之前,UDP和TCP基本是一致的。在TCP通信中,有兩套套接字,其中一套用于監(jiān)聽,稱之為監(jiān)聽套接字。TCP不同于UDP,如果和客戶端之間沒有連接就不能發(fā)送數(shù)據(jù),所以要把一個套接字設置為監(jiān)聽狀態(tài),以便在任意時候客戶端請求服務器時都能有套接字與該客戶端建立連接。關(guān)于BACKLOG選項后序再網(wǎng)絡原理里面再做解釋

函數(shù)原型如下

#include <sys/socket.h>int listen(int s, int backlog);

3:accept

accept表示服務端接受一個連接,每當一個客戶端連接成功時,就會建立一條連接。最為關(guān)鍵的是該接口的返回值,其返回值也是一個套接字,前面說過TCP通信中存在兩套套接字,一個就是剛才說到的過的監(jiān)聽套接字,它的職責就是不斷從網(wǎng)絡中獲取連接,因為可能會用很多客戶端想要和服務端通信,當它把連接拿上來之后,調(diào)用接口accept,其返回值所產(chǎn)生的套接字就是專門用來處理這條連接,用于進行通信的。這樣做的話整個服務端只需要一個監(jiān)聽套接字,同時連接只要成功,只需調(diào)用接口產(chǎn)生新的套接字再用于通信即可。

int _sock=accept(listen_sock,(struct sockaddr*)&endpoint,&len);

當accept失敗時,該接口返回值也會小于0,需要注意的是此時只是一個連接失敗了,你不能因為這么一個連接失敗了,而把整個服務器給退了,所以要繼續(xù)continue。
當accept成功時,我們建立一個新的函數(shù),該函數(shù)就是用來專門去處理通信問題的

如下在accept成功之后,加入這樣一句代碼,表示連接上了一臺新的客戶端

然后使用telnet命令,如果你的Centos沒有這個命令,需要進行一定配置,鏈接如下,親測有效

CentOS 7.4安裝telnet服務端

然后使用本地環(huán)回測試,使用telnet進行連接,可以發(fā)現(xiàn)當一臺主機連接成功時,服務端提示出了相應的訊息

4:recv和send
不同于UDP中的recvfrom和sendto,在TCP通信中,我們盡可能采用的是recv和send來接受和發(fā)送

#include <sys/types.h> #include <sys/socket.h>ssize_t recv(int sockfd, void *buf, size_t len, int flags); int send(int s, const void *msg, size_t len, int flags);

(2)客戶端

tcpClient.h

#include <iostream> #include <string> #include <cstring> #include <unistd.h> #include <cstdio> #include <cstdlib> #include <sys/socket.h> #include <sys/types.h> #include <arpa/inet.h> #include <netinet/in.h> using namespace std;class tcpClient { private:string _ip;//服務端IP和端口號int _port;int _sock; public:tcpClient(string ip="127.0.0.1",int port=8080):_ip(ip),_port(port){}void initClient(){_sock=socket(AF_INET,SOCK_STREAM,0);//區(qū)別UDPif(_sock < 0){cout<<"套接字創(chuàng)建失敗"<<endl;exit(2);}struct sockaddr_in sev;sev.sin_family=AF_INET;sev.sin_port=htons(_port);sev.sin_addr.s_addr=inet_addr(_ip.c_str());//TCP-connectif(connect(_sock,(struct sockaddr*)&sev,sizeof(sev))!=0){cout<<"connect失敗"<<endl;exit(3);}}void startClient(){char mssage[64];while(1){ size_t s=read(0,mssage,sizeof(mssage)-1);//從標準輸入讀入if(s > 0){mssage[s-1]='\0';//剔除換行符send(_sock,mssage,strlen(mssage),0);ssize_t ret=recv(_sock,mssage,sizeof(mssage)-1,0);if(ret > 0){cout<<"客戶端得到服務端消息"<<mssage<<endl;}}}}~tcpClient(){close(_sock);}};

1:connect

TCP是面向連接,因此對于客戶端來說,它就要調(diào)用connect接口連接服務端,如果返回值為0表示連接成功

connect(_sock,(struct sockaddr*)&sev,sizeof(sev))

2:客戶端退出

當客戶端退出時,我們要讓服務器知道客戶端退出,并且關(guān)閉已經(jīng)打開的套接字
那么服務端如何知道客戶端退出了呢,這其實和recv接口的返回值有關(guān)

These calls return the number of bytes received, or -1 if an error occurred. In the event of an error, errno is set to indicate theerror. The return value will be 0 when the peer has performed an orderly shutdown.

它的意思就說如果客戶端下線,那么服務端將會接受到0 因此,服務端會有下面這樣代碼

if(s==0) {cout<<"客戶端已經(jīng)下線"<<endl;close(sock);break; }

二:TCP通信-多進程/線程

使用上面的代碼,利用telnet進行測試,xshell中有多個窗口,代表多個客戶端,第一個客戶端連接后,服務端的確打印出了相關(guān)訊息,但是第二個和第三個在連接時卻沒有打印出信息

問題的原因就是咋們編寫的服務器目前是一個單進程版的服務器,當?shù)谝粋€主機連接時,由于沒有發(fā)送數(shù)據(jù),因此進程會被阻塞在service函數(shù)中,到時后面的客戶端連接不上

(1)多進程版本

tcpServer.h

#include <iostream> #include <signal.h> #include <string> #include <unistd.h> #include <cstdio> #include <cstring> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <netinet/in.h> using namespace std;#define BACKLOG 5class tcpServer { private:int _port;int listen_sock; public:tcpServer(int port=8080):_port(port){}void initServer(){signal(SIGCHLD,SIG_IGN);//讓子進程自己銷毀listen_sock=socket(AF_INET,SOCK_STREAM,0);//區(qū)別UDP,TCP采用流式套接字if(listen_sock < 0){cout<<"套接字創(chuàng)建失敗"<<endl;exit(2);}struct sockaddr_in local;local .sin_family=AF_INET;local.sin_port=htons(_port);local.sin_addr.s_addr=htonl(INADDR_ANY);if(bind(listen_sock,(struct sockaddr*)&local,sizeof(local)) < 0){cout<<"綁定失敗"<<endl;exit(3);}//開啟監(jiān)聽if(listen(listen_sock,BACKLOG) < 0){cout<<"綁定失敗"<<endl;exit(4);}}void Service(int sock){char buffer[1024];while(1){size_t s=recv(sock,buffer,sizeof(buffer)-1,0);if(s > 0){buffer[s]='\0';cout<<"服務端收到客戶端的消息:"<<buffer<<endl;send(sock,buffer,strlen(buffer),0);}if(s==0){cout<<"客戶端已經(jīng)下線"<<endl;close(sock);break;}}}void startServer(){sockaddr_in endpoint;while(1){//acceptsocklen_t len=sizeof(endpoint);int _sock=accept(listen_sock,(struct sockaddr*)&endpoint,&len);if(_sock < 0){cout<<"accept失敗"<<endl;continue;}string client_info=inet_ntoa(endpoint.sin_addr);client_info+=":";client_info+=to_string(ntohs(endpoint.sin_port));cout<<"一臺新的客戶端已經(jīng)連接:"<<client_info<<endl;pid_t id=fork();if(id==0)//子進程{close(listen_sock); //子進程會以父進程為模板,復制父進程PCB,所以對于子進程來說,可以關(guān)閉的它的listen_sock,盡量節(jié)省資源Service(_sock);exit(0);//子進程處理完畢}//對于父進程它只關(guān)心監(jiān)聽套接字,所以可以把父進程的sock關(guān)閉,而且是必須關(guān)掉,因為這個sock對它沒用了close(_sock);}}~tcpServer(){close(listen_sock);} };

以上代碼中關(guān)于父子進程之間的關(guān)系,以及進程等待這里就不細談了,詳見

Linux系統(tǒng)編程

再次強調(diào),對于子進程,它可以關(guān)閉監(jiān)聽套接字,因為子進程是用來通信的,它只關(guān)心sock,對于父進程則必須要關(guān)閉sock,只保留監(jiān)聽套接字,否則客戶端連接的越多,系統(tǒng)資源將會被耗盡

再次測試,可以發(fā)現(xiàn)多個客戶端可以同時連接服務器

(2)多線程版本

在Linux系統(tǒng)編程那一部分我們詳細說過多線程和多進程的優(yōu)缺點,創(chuàng)建進程的代價遠遠高于創(chuàng)建線程,因此多線程版本如下

#include <iostream> #include <pthread.h> #include <signal.h> #include <string> #include <unistd.h> #include <cstdio> #include <cstring> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <netinet/in.h> using namespace std;#define BACKLOG 5class tcpServer { private:int _port;int listen_sock; public:tcpServer(int port=8080):_port(port){}void initServer(){listen_sock=socket(AF_INET,SOCK_STREAM,0);//區(qū)別UDP,TCP采用流式套接字if(listen_sock < 0){cout<<"套接字創(chuàng)建失敗"<<endl;exit(2);}struct sockaddr_in local;local .sin_family=AF_INET;local.sin_port=htons(_port);local.sin_addr.s_addr=htonl(INADDR_ANY);if(bind(listen_sock,(struct sockaddr*)&local,sizeof(local)) < 0){cout<<"綁定失敗"<<endl;exit(3);}//開啟監(jiān)聽if(listen(listen_sock,BACKLOG) < 0){cout<<"綁定失敗"<<endl;exit(4);}}static void Service(int sock){char buffer[1024];while(1){size_t s=recv(sock,buffer,sizeof(buffer)-1,0);if(s > 0){buffer[s]='\0';cout<<"服務端收到客戶端的消息:"<<buffer<<endl;send(sock,buffer,strlen(buffer),0);}if(s==0){cout<<"客戶端已經(jīng)下線"<<endl;close(sock);break;}}}static void* Route(void* args)//線程路線{pthread_detach(pthread_self());int* p=(int*)args;int sock=*p;Service(sock);return NULL;}void startServer(){sockaddr_in endpoint;while(1){//acceptsocklen_t len=sizeof(endpoint);int _sock=accept(listen_sock,(struct sockaddr*)&endpoint,&len);if(_sock < 0){cout<<"accept失敗"<<endl;continue;}string client_info=inet_ntoa(endpoint.sin_addr);client_info+=":";client_info+=to_string(ntohs(endpoint.sin_port));cout<<"一臺新的客戶端已經(jīng)連接:"<<client_info<<endl;pthread_t tid;int* p=new int(sock);//在堆上開辟,p是棧私有的,防止出現(xiàn)bugpthread_create(&tid,nullptr,Route,(void*)&_sock);}}~tcpServer(){close(listen_sock);} };

效果如下

(3)線程池版本

關(guān)于線程部分,可以查看

Linux系統(tǒng)編程41:多線程之線程池的概念及實現(xiàn)

服務器大致邏輯為:

  • 初始化服務器,服務器初始化時創(chuàng)建線程池
  • 啟動服務器,創(chuàng)建任務,將任務放進線程池的任務隊列中
  • 由于任務的加入,喚醒了線程池中的線程,線程拿到任務,調(diào)用任務的工作接口,進行工作
  • 工作完畢調(diào)用析構(gòu)函數(shù),釋放套接字
  • 下面的代碼簡單的實現(xiàn)了客戶端發(fā)送英文單詞,服務端進行翻譯的過程

    thread_pool.h

    #pragma once #include <iostream> #include <pthread.h> #include <signal.h> #include <string> #include <unistd.h> #include <cstdio> #include <cstring> #include <sys/types.h> #include <sys/socket.h> #include <arpa/inet.h> #include <netinet/in.h> #include <queue> #include <map> using namespace std;struct Task//任務 { private:int _sock;//套接字static map<string,string> dict;//字典 public:Task(){}~Task(){close(_sock);}Task(int sock):_sock(sock){dict.insert(pair<string,string>("apple","蘋果"));dict.insert(pair<string,string>("melon","西瓜"));dict.insert(pair<string,string>("orange","橘子"));}void work()//獲得任務后在這里進行判斷{char buffer[1024];size_t s=recv(_sock,buffer,sizeof(buffer)-1,0);if(s > 0){buffer[s]='\0';string key=buffer;//拿到用戶的鍵值cout<<"服務端收到客戶端的消息:"<<buffer<<endl;send(_sock,dict[key].c_str(),dict[key].size(),0);//給用戶返回翻譯結(jié)果}if(s==0){cout<<"客戶端已經(jīng)下線"<<endl;}} };map<string,string>Task:: dict;class ThreadPool//線程池 { private:bool _thread_quit_flag;//線程退出標志,如果主線程發(fā)送了信號,就將其置為trueint _thread_num;//線程池線程數(shù)量queue<Task*> q;//任務隊列,存放指針pthread_mutex_t lock;//保護任務隊列的鎖pthread_cond_t cond;//條件變量,當沒有任務時線程池的線程掛起,當有任務時喚醒線程池線程public:void ThreadLock(){//鎖pthread_mutex_lock(&lock);}void ThreadUnlock(){//解鎖pthread_mutex_unlock(&lock);}bool IsEmpty(){//判斷任務隊列為空return q.size()==0;}void Threadwait(){//沒有任務線程池的線程掛起pthread_cond_wait(&cond,&lock);}void Threadwakeup(){//當主線程添加了任務就喚醒線程池線程pthread_cond_signal(&cond);}void ThreadWakeAll(){//最后發(fā)送退出信號時,將所有線程喚醒,然后讓其退出pthread_cond_broadcast(&cond);//喚醒所有線程}void ThreadQuit(){//線程退出函數(shù)pthread_exit(nullptr);}public:ThreadPool(int thread_num=5):_thread_quit_flag(false),_thread_num(thread_num)//flag默認設置為flase,不退出{pthread_mutex_init(&lock,nullptr);pthread_cond_init(&cond,nullptr);}~ThreadPool(){pthread_mutex_destroy(&lock);pthread_cond_destroy(&cond);}static void* Route(void* arg)//所有的線程都要執(zhí)行這樣的流程:先判斷是否有任務,有就執(zhí)行,沒有就掛起{pthread_detach(pthread_self());//線程 ThreadPool* this_p=(ThreadPool*)arg;//某個線程的this指針while(1){this_p->ThreadLock();//鎖定任務隊列while(this_p->_thread_quit_flag==false && this_p->IsEmpty())//如果沒有發(fā)出退出信號并且隊列為空,那么就讓線程掛起{this_p->Threadwait();//當線程蘇醒時(可能接收到了廣播信號或者位于線程隊列它被下一個喚醒了),就會從掛起的地方醒來,繼續(xù)向下執(zhí)行}if((this_p->_thread_quit_flag==false && !this_p->IsEmpty()) || (this_p->_thread_quit_flag==true && !this_p->IsEmpty()))//醒來的原因不管是否是因為接收到了退出信號,反正只要有任務就得先執(zhí)行完{Task* t;this_p->Get(&t);this_p->ThreadUnlock();//注意不要在臨界資源內(nèi)做任務,效率很低t->work();//獲得任務后進行計算delete t;//任務結(jié)束關(guān)閉套接字,調(diào)用任務析構(gòu)函數(shù)關(guān)閉套接字}//如果接受到信號且隊列已經(jīng)Wie空了,那么就退出線程else if(this_p->_thread_quit_flag==true && this_p->IsEmpty())//如果醒來的原因是因為接受到了退出信號,而且任務隊列中已經(jīng)沒有任務了,那么就退出線程{this_p->ThreadUnlock();this_p->ThreadQuit();//退出時不要忘記解鎖,否則將來只有一個線程能推出,其余線程無法退出}} }void ThreadPoolInit()//風險操作不要在構(gòu)造函數(shù)中寫,該函數(shù)用于創(chuàng)建線程池線程,并讓線程執(zhí)行Route流程{pthread_t t;for(int i=0;i < _thread_num;i++){pthread_create(&t,nullptr,Route,this);//這里最后一個參數(shù)傳入了this指針,相應的Route函數(shù)也是靜態(tài)成員函數(shù)//如果不傳入this指針,那么當這個參數(shù)就會和非靜態(tài)成員函數(shù)搶this指針的位置,因此會造成參數(shù)過多的問題//所以在這里傳入this,然后在形參中使用this調(diào)用自己的成員函數(shù)即可}}void ThreadPoolQuit()//線程池退出{_thread_quit_flag=true;//將結(jié)束標志置為trueThreadWakeAll();//喚醒所有線程}void Get(Task** t)//線程獲取任務{Task* out=q.front();//注意是指針q.pop();*t=out;//這是解引用}void Put(Task& t)//主線程放任務{ThreadLock();q.push(&t);//注意這是取地址ThreadUnlock();Threadwakeup();//當放了一個任務后立馬喚醒線程,這里一般情況下不要喚醒所有線程,會產(chǎn)生掠群效應,影響穩(wěn)定性} };

    tcp_server.h

    #include "thread_pool.h" #define BACKLOG 5class tcpServer { private:int _port;int listen_sock;ThreadPool* _th; public:tcpServer(int port=8080):_port(port),_th(nullptr){}void initServer(){listen_sock=socket(AF_INET,SOCK_STREAM,0);//區(qū)別UDP,TCP采用流式套接字if(listen_sock < 0){cout<<"套接字創(chuàng)建失敗"<<endl;exit(2);}struct sockaddr_in local;local .sin_family=AF_INET;local.sin_port=htons(_port);local.sin_addr.s_addr=htonl(INADDR_ANY);if(bind(listen_sock,(struct sockaddr*)&local,sizeof(local)) < 0){cout<<"綁定失敗"<<endl;exit(3);}//開啟監(jiān)聽if(listen(listen_sock,BACKLOG) < 0){cout<<"綁定失敗"<<endl;exit(4);}_th=new ThreadPool();_th->ThreadPoolInit();//初始化線程池}static void Service(int sock){char buffer[1024];while(1){size_t s=recv(sock,buffer,sizeof(buffer)-1,0);if(s > 0){buffer[s]='\0';cout<<"服務端收到客戶端的消息:"<<buffer<<endl;send(sock,buffer,strlen(buffer),0);}if(s==0){cout<<"客戶端已經(jīng)下線"<<endl;close(sock);break;}}}static void* Route(void* args){pthread_detach(pthread_self());int* p=(int*)args;int sock=*p;Service(sock);return NULL;}void startServer(){sockaddr_in endpoint;while(1){//acceptsocklen_t len=sizeof(endpoint);int _sock=accept(listen_sock,(struct sockaddr*)&endpoint,&len);if(_sock < 0){cout<<"accept失敗"<<endl;continue;}string client_info=inet_ntoa(endpoint.sin_addr);client_info+=":";client_info+=to_string(ntohs(endpoint.sin_port));cout<<"一臺新的客戶端已經(jīng)連接:"<<client_info<<endl;//構(gòu)建任務,放進線程池Task* t=new Task(_sock);_th->Put(*t);}}~tcpServer(){close(listen_sock);}};

    tcp_client.h

    #include <iostream> #include <string> #include <cstring> #include <unistd.h> #include <cstdio> #include <cstdlib> #include <sys/socket.h> #include <sys/types.h> #include <arpa/inet.h> #include <netinet/in.h> using namespace std;class tcpClient { private:string _ip;int _port;int _sock; public:tcpClient(string ip="127.0.0.1",int port=8080):_ip(ip),_port(port){}void initClient(){_sock=socket(AF_INET,SOCK_STREAM,0);if(_sock < 0){cout<<"套接字創(chuàng)建失敗"<<endl;exit(2);}struct sockaddr_in sev;sev.sin_family=AF_INET;sev.sin_port=htons(_port);sev.sin_addr.s_addr=inet_addr(_ip.c_str());if(connect(_sock,(struct sockaddr*)&sev,sizeof(sev))!=0){cout<<"connect失敗"<<endl;exit(3);}}void startClient(){char mssage[64];while(1){ cout<<"請輸入信息**:";fflush(stdout);size_t s=read(0,mssage,sizeof(mssage)-1);//從標準輸入讀入if(s > 0){mssage[s-1]='\0';//剔除換行符send(_sock,mssage,strlen(mssage),0);ssize_t ret=recv(_sock,mssage,sizeof(mssage)-1,0);if(ret > 0){cout<<"客戶端得到服務端消息"<<mssage<<endl;}else if(ret ==0){break;}}}}~tcpClient(){close(_sock);} };

    效果如下

    新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎!定制產(chǎn)品紅包拿不停!

    總結(jié)

    以上是生活随笔為你收集整理的2-4:套接字(Socket)编程之TCP通信的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

    天堂在线一区二区 | 精品高清美女精品国产区 | 婷婷久草| 亚洲精品裸体 | 亚洲精品在线一区二区三区 | 久久精品91久久久久久再现 | 九九久久久久99精品 | av片无限看 | 奇米影视8888在线观看大全免费 | 久久久久日本精品一区二区三区 | 国产高清av免费在线观看 | 福利二区视频 | 91成人精品一区在线播放69 | av电影av在线| 91av观看 | 免费网站黄色 | 99在线热播| 国产日韩精品欧美 | 久久se视频| 国产乱码精品一区二区三区介绍 | 一级做a视频 | 又黄又爽又湿又无遮挡的在线视频 | 欧美亚洲xxx | 欧美日韩久久不卡 | 精品国产亚洲在线 | 中文字幕欧美日韩va免费视频 | 久视频在线播放 | 亚洲综合精品视频 | 婷婷久久一区 | 91久久国产自产拍夜夜嗨 | 国产麻豆视频免费观看 | 国产第一福利 | 国产精品一区在线观看 | 亚洲日本欧美在线 | 亚洲在线视频网站 | 综合网天天射 | www·22com天天操 | 黄色电影网站在线观看 | 久久精品国亚洲 | 片黄色毛片黄色毛片 | 99久久精品久久亚洲精品 | 久久高清精品 | 欧美va日韩va| 亚洲视频免费 | 国产精品美女久久久免费 | 久久三级毛片 | 在线观看午夜av | 国产精品精品久久久久久 | 91精品在线免费 | 精品色999 | 中文字幕日本特黄aa毛片 | 黄色成人91| 国产美女精品视频 | 亚洲国产黄色片 | 国产视频不卡一区 | 激情偷乱人伦小说视频在线观看 | 97色噜噜| 国产美女精彩久久 | 五月开心六月婷婷 | 午夜精品久久久久久久久久久 | www.黄色| 狠狠操狠狠干天天操 | 精品uu| 亚洲在线观看av | 日韩免费福利 | 国产一区在线精品 | www.av小说 | 日韩免费在线一区 | 午夜18视频在线观看 | 久久久亚洲麻豆日韩精品一区三区 | 91麻豆精品国产自产在线 | 超碰在线色| 狂野欧美激情性xxxx欧美 | 久久久91精品国产一区二区精品 | 人人cao| 日韩3区| 精品国产亚洲一区二区麻豆 | 国产精品mv | 黄色电影在线免费观看 | 国产在线高清精品 | 九色精品免费永久在线 | 91刺激视频| 欧美精品一区二区三区一线天视频 | 久久毛片视频 | 亚州日韩中文字幕 | 中文字幕在线观看资源 | av+在线播放在线播放 | 免费黄在线观看 | 国产香蕉视频在线播放 | 日韩在线网址 | 午夜在线看片 | 国产视频欧美视频 | 啪嗒啪嗒免费观看完整版 | 狠狠干综合 | 色网站在线看 | 高清av免费一区中文字幕 | 国产99久久久久久免费看 | 久久在线一区 | 三日本三级少妇三级99 | 国产精品久久久久av | 蜜臀av性久久久久蜜臀av | 美女网色| 91日韩在线视频 | 天天操天天摸天天干 | 91在线看片 | 日日婷婷夜日日天干 | 成人免费一区二区三区在线观看 | 国产很黄很色的视频 | 色老板在线视频 | 日韩视频中文 | 日韩在线不卡视频 | 亚洲激情视频在线 | 91丨九色丨高潮丰满 | 国产 一区二区三区 在线 | 91完整版观看 | 欧美一级片播放 | 最近中文字幕第一页 | 日韩视频一区二区三区在线播放免费观看 | 国产一区二区三区免费视频 | 在线观看av的网站 | 久视频在线 | 精品国产一二三 | 天天干天天想 | 久久国产剧场电影 | 国产 欧美 日本 | 欧美日韩国产综合一区二区 | 午夜免费福利视频 | aaa免费毛片| 国产日韩欧美在线 | 久久久精品 一区二区三区 国产99视频在线观看 | 美女视频网| av无限看 | 中文字幕亚洲不卡 | 欧洲一区二区三区精品 | 四虎国产精品免费 | 亚洲成人精品影院 | 99久久网站| 久久久国产一区二区 | 91最新在线观看 | 中文字幕在线视频国产 | 成人h在线观看 | 精品在线观看一区二区 | 91日韩在线视频 | 91超在线| 日韩一级片观看 | 日韩在线视频国产 | 九九热中文字幕 | 狠狠干,狠狠操 | 在线观看中文 | 美女av在线免费 | 91自拍视频在线观看 | 日韩 在线观看 | 久久久精品 一区二区三区 国产99视频在线观看 | 最新黄色av网址 | 深夜成人av| 国产精品美女久久久久久免费 | 美女视频网站久久 | 国产不卡一二三区 | 伊人五月综合 | 最新高清无码专区 | 国产免费久久精品 | 国产精品2区 | 国产成人a v电影 | 99国产精品视频免费观看一公开 | 国产专区在线看 | 午夜精品久久久久久久爽 | 看v片 | 亚洲国产精品电影在线观看 | 亚洲女裸体 | 婷婷视频在线播放 | 日韩欧美xx | 最近中文字幕国语免费av | 97色se| 99精品视频免费观看视频 | 97电影院在线观看 | 91精品国自产拍天天拍 | 五月婷婷一级片 | 在线观看亚洲 | 日韩高清激情 | 99这里有精品 | 99精品热 | 美女在线国产 | 人人干人人干人人干 | 国产拍在线 | 免费精品视频在线 | 99久久精品免费视频 | 在线中文字母电影观看 | 午夜精品视频在线 | 四虎国产精品免费观看视频优播 | 日韩一区二区在线免费观看 | 91插插插免费视频 | 三三级黄色片之日韩 | 美女视频黄在线观看 | 国产精品久久久av | 成人av免费电影 | 综合久久一本 | 一区二区三区在线免费 | 亚洲精品国偷拍自产在线观看蜜桃 | 精品91在线| 亚洲精品456在线播放第一页 | 国产一区二区免费看 | 婷婷成人亚洲综合国产xv88 | 日本少妇久久久 | 国产短视频在线播放 | 日韩在线观看视频一区二区三区 | 久久久国产一区二区三区 | 97香蕉视频 | 91成人在线视频 | 永久av免费在线观看 | 亚洲精选久久 | 久久久亚洲成人 | 国产亚洲精品成人av久久ww | 国产精品一区二区av影院萌芽 | 一区二区三区免费在线播放 | 一级免费av | 1024久久| 91黄色成人 | av免费网| av永久网址 | 亚洲国产精品va在线 | 国产福利电影网址 | 久久久久久久久综合 | 亚洲午夜av久久乱码 | 免费视频a | 日韩动态视频 | 亚洲精品自在在线观看 | 亚洲精品免费在线视频 | 亚洲欧美日韩国产精品一区午夜 | 亚洲狠狠| 在线播放第一页 | 91亚洲精品久久久蜜桃网站 | 操操操com | 日日摸日日添夜夜爽97 | 深爱开心激情网 | 91系列在线观看 | 国产精品一区二区三区免费看 | 亚洲无吗av | 97色婷婷成人综合在线观看 | 九九免费精品视频在线观看 | 久久视频二区 | 一区二区免费不卡在线 | 亚洲精品456在线播放乱码 | av在线进入 | 成片免费观看视频 | 91精品国自产在线偷拍蜜桃 | 午夜精品成人一区二区三区 | 国产在线欧美日韩 | 成人av电影免费观看 | 国产护士hd高朝护士1 | 久久69av| 7777精品伊人久久久大香线蕉 | 国产一二区免费视频 | 亚洲成人麻豆 | 久久久久久网站 | 国产精品综合久久久 | 亚洲经典中文字幕 | 国产成人黄色片 | 欧美极品在线播放 | 午夜三级在线 | 免费成人黄色av | 久久久精品成人 | 久久久免费观看 | 欧美在线观看视频免费 | 亚洲欧洲精品一区二区 | 免费精品在线观看 | 国产精品一区二区三区99 | 国产免费小视频 | 国产成人精品福利 | 亚洲伊人av| 91av观看 | 亚州av免费 | 国产成人久久精品亚洲 | 国产精品久久久久久久久久久久久 | 中文字幕日韩av | 国产专区精品视频 | 狠狠操.com | 91av视频免费在线观看 | 精品久久久久久亚洲综合网 | 在线观看视频国产一区 | 久久久久久草 | 九九综合九九 | 国产日产精品一区二区三区四区 | 伊人国产女 | 久久草精品 | 亚洲 欧洲 国产 日本 综合 | 91精品啪| 人人干天天射 | 国产免费观看视频 | 午夜国产一区二区三区四区 | 中文字幕一区二区三区视频 | 国产99亚洲 | 99热在线观看免费 | 国产精品系列在线播放 | 91人人爽久久涩噜噜噜 | 在线观看一区视频 | 亚洲成人999 | 黄色免费电影网站 | 久久九九网站 | 久久精品视频日本 | 欧美少妇xxxxxx | 国产毛片在线 | 天天爽夜夜爽人人爽一区二区 | 亚洲影音先锋 | 亚洲精品99久久久久中文字幕 | 91资源在线免费观看 | 亚洲欧美成aⅴ人在线观看 四虎在线观看 | www黄com| 免费在线观看午夜视频 | 日韩电影在线观看一区二区 | 高潮久久久久久久久 | 亚洲精品乱码白浆高清久久久久久 | 少妇av片| 五月婷婷久草 | 亚洲九九九在线观看 | 免费黄在线看 | 蜜桃av综合网| 色av资源网| 精壮的侍卫呻吟h | 中文字幕乱在线伦视频中文字幕乱码在线 | 国产精品欧美久久久久天天影视 | 精品国产自在精品国产精野外直播 | 一区二区三区四区精品 | 日韩专区中文字幕 | 激情图片久久 | 黄色三级免费网址 | 超碰日韩在线 | 天天摸天天干天天操天天射 | 精品超碰 | 久久亚洲精品电影 | 亚洲一级片 | 国产综合精品一区二区三区 | 四虎海外影库www4hu | 久久xxxx| 日日射天天射 | 免费av观看网站 | 中文字幕免费一区二区 | 欧美视频一区二 | 成人高清在线 | 久久99这里只有精品 | 日韩精品在线观看av | 久久综合久久综合九色 | 黄色软件大全网站 | 日韩免费在线 | 一区二区三区视频 | 91麻豆精品国产91久久久更新时间 | 99精品在这里| 激情综合亚洲精品 | 日韩欧美有码在线 | 中文在线天堂资源 | 深爱激情五月婷婷 | 国产一区国产二区在线观看 | 一区二区三区播放 | 91精品一区在线观看 | 成人啪啪18免费游戏链接 | 亚洲天堂网视频在线观看 | 免费亚洲一区二区 | 免费看av片网站 | 婷婷日 | 成人av免费电影 | 久久久久久久久久影视 | 国产+日韩欧美 | 国内精品毛片 | 射久久| 成年人天堂com | 激情网婷婷 | 色婷婷成人网 | 91在线在线观看 | 日本一区二区三区免费看 | 国产裸体视频网站 | 99热精品在线观看 | 免费99精品国产自在在线 | 国产高清久久久久 | 友田真希av | 久久国产精品一区二区三区四区 | 97碰碰碰 | 免费特级黄毛片 | 99久久久免费视频 | 国产精品中文字幕在线 | 狠狠综合久久av | 天天干天天射天天爽 | 欧美日韩国产综合网 | 中文字幕av全部资源www中文字幕在线观看 | 亚洲国产成人精品电影在线观看 | 日韩精品一区二区三区不卡 | 麻豆免费在线播放 | 日韩高清一二三区 | 精品毛片久久久久久 | 免费视频资源 | 亚州精品天堂中文字幕 | 狠狠狠干狠狠 | 久久视频免费在线 | 国产免费大片 | 国产精品一码二码三码在线 | 女人18毛片a级毛片一区二区 | 黄网站app在线观看免费视频 | 天天视频色版 | 懂色av一区二区三区蜜臀 | 99久热在线精品视频 | 国产精品美女久久久久久2018 | 久久亚洲婷婷 | 国产日产精品久久久久快鸭 | 国产亚洲va综合人人澡精品 | 久久尤物电影视频在线观看 | 国产精品第一视频 | 2023国产精品自产拍在线观看 | 夜色资源站国产www在线视频 | 久久精品国产成人精品 | 日韩欧美在线高清 | 99热这里只有精品1 av中文字幕日韩 | 日韩在线国产 | 亚洲国产日韩欧美 | 国产福利av在线 | 国产精品第二页 | 久久人人添人人爽添人人88v | 日本不卡一区二区三区在线观看 | 亚洲综合激情网 | 久久精品91久久久久久再现 | 成人精品电影 | 欧美另类成人 | 久久综合色天天久久综合图片 | 天天操人人要 | 黄色视屏免费在线观看 | 日韩欧美精品一区二区三区经典 | 日韩国产精品久久久久久亚洲 | 国内精品久久久久久久影视简单 | av大全在线看 | 欧美性黄网官网 | 日韩av资源在线观看 | 国产一区二区三区网站 | 五月天久久婷 | 91亚洲精品国产 | www.国产高清 | 国内外成人在线视频 | 欧美a级成人淫片免费看 | 视频精品一区二区三区 | 六月婷婷网 | 欧美国产一区在线 | 激情五月五月婷婷 | 西西大胆免费视频 | 午夜免费久久看 | 国产剧情在线一区 | 精品国产乱码久久久久久久 | 日韩在线视频网址 | 中文字幕 成人 | 日韩久久精品 | 国产精品成久久久久 | 欧美日韩国产网站 | 久久一区国产 | 国产成人福利片 | 国产精品国产三级国产aⅴ9色 | 九色精品在线 | 国产一级不卡毛片 | 伊人热 | 久草电影在线 | 九九热免费精品视频 | 一区二区三区在线免费观看 | 精品久久久久_ | 国产免费一区二区三区最新6 | 五月天九九| 999国内精品永久免费视频 | 免费亚洲成人 | 亚洲视频 中文字幕 | 国产最新视频在线 | 最新国产精品拍自在线播放 | 国产美女网| 亚洲精品理论 | 久久久久国产精品视频 | 国产精品一区二区三区四 | 亚洲a网| 国产一级免费播放 | 日韩精品视频免费专区在线播放 | 欧美日韩国产精品一区二区三区 | 天天操比| 国产一区二区在线看 | 伊人天天狠天天添日日拍 | 成人久久久久久久久久 | 四虎在线视频免费观看 | 91 在线视频| 国产成人免费精品 | 免费看成年人 | 五月天久久 | 久草在线久草在线2 | 国产一二三区在线观看 | 91精彩在线视频 | 免费看网站在线 | 国产一卡久久电影永久 | 69久久夜色精品国产69 | 久久久久国产精品免费免费搜索 | 色天天久久 | 欧美日韩国产精品一区二区 | 日韩视频1 | 一区二区三区在线免费 | 久草电影免费在线观看 | 国产三级视频在线 | 大胆欧美gogo免费视频一二区 | 91夜夜夜 | 免费www视频 | 国产在线精品福利 | 操天天操 | 国产福利91精品一区 | 久久玖 | 国产欧美精品一区二区三区 | 玖玖爱国产在线 | 亚洲精品国产高清 | 天天干,天天射,天天操,天天摸 | 在线看国产视频 | 69精品视频在线观看 | 人成午夜视频 | 国产69久久久欧美一级 | 久久免费av电影 | 色香蕉网 | 中国成人一区 | 国产视频精品在线 | 中文字幕视频网站 | 超碰精品在线 | 精品播放 | 五月天精品视频 | 五月婷婷激情六月 | av免费高清观看 | 亚洲经典精品 | 欧美日韩不卡一区 | 久久伊人国产精品 | 中文字幕亚洲国产 | 天天色天天操天天爽 | 日日精品 | 丰满少妇在线观看资源站 | 久久久久久国产精品免费 | 欧美日韩视频一区二区三区 | 玖玖精品视频 | 精品国模一区二区 | av手机在线播放 | 91高清免费看 | 婷婷四房综合激情五月 | 亚洲精品看片 | 国产99在线播放 | 四虎在线永久免费观看 | 日韩av中文字幕在线免费观看 | 国产成在线观看免费视频 | 中文字幕在线色 | 日日躁夜夜躁aaaaxxxx | 欧美色综合天天久久综合精品 | 五月精品 | 91亚洲精品乱码久久久久久蜜桃 | 免费在线观看污 | 色a综合 | 国产男女免费完整视频 | 亚洲一区二区麻豆 | 久久久久日本精品一区二区三区 | 深爱五月激情网 | 中文字幕日本在线 | 96在线 | 国产一级黄 | 天天激情| 手机成人在线 | 国产精品一区二区三区四 | 91免费国产在线观看 | 日韩国产高清在线 | 国产粉嫩在线 | 亚洲乱码在线观看 | 在线观看中文字幕网站 | 国产精品成人免费精品自在线观看 | 国产视频午夜 | 99精品国产高清在线观看 | 超级碰碰视频 | 日本在线观看一区 | 亚洲天堂视频在线 | 97成人免费| 一区二区三区免费在线观看视频 | 日韩成人在线一区二区 | 黄色国产区| 久久久久成 | 成人黄色一级视频 | 亚洲精品国偷拍自产在线观看蜜桃 | 日本中文字幕在线视频 | 免费av在线 | 青草视频在线 | 成人av免费在线看 | 亚洲欧美国产视频 | www.黄色网.com | www.久久色 | 欧美日韩精品在线 | 97爱爱爱 | 欧美日韩调教 | 超碰免费成人 | 久久久久久久久亚洲精品 | 天天噜天天色 | 国产高清日韩欧美 | a在线免费 | 久久精品小视频 | 一区二区三区精品久久久 | 亚洲成人xxx | 国产成人精品久久二区二区 | 免费在线观看成人小视频 | 亚洲jizzjizz日本少妇 | 国产99久久久国产精品免费二区 | 国产五月天婷婷 | 激情网五月婷婷 | 日本精品久久久久中文字幕 | 丁五月婷婷 | 午夜精品福利一区二区 | 在线国产视频 | 欧美日韩在线第一页 | 狠狠的干狠狠的操 | 亚洲精品国产免费 | 久久综合免费视频 | 激情网综合 | 亚洲自拍自偷 | 狠狠五月婷婷 | 在线看国产一区 | 亚洲日日夜夜 | 亚洲国产福利视频 | 亚洲aaa毛片 | 亚洲九九九在线观看 | 天天操狠狠操网站 | 日本精品视频免费观看 | 成人免费视频免费观看 | 亚洲综合视频在线播放 | av免费看av | 日韩理论片在线 | 国产手机精品视频 | 99热.com| 天天天天天天干 | 国产一区在线播放 | 精品一区二区电影 | 久久精品二区 | 91人人爽人人爽人人精88v | 欧美在线你懂的 | 有码一区二区三区 | 97超碰人人澡人人爱学生 | 欧美最猛性xxxxx免费 | 国产婷婷vvvv激情久 | 精品在线一区二区三区 | 人人爽人人爽人人片av免 | 国产日韩一区在线 | 亚洲作爱 | 久久精品久久99精品久久 | 99热在线国产| 中文字幕在线播放一区二区 | 国产精品不卡一区 | 欧美日韩国产高清视频 | 婷婷视频在线观看 | 久久99视频免费观看 | 久久免费视频网站 | 国产91精品一区二区麻豆网站 | 91探花国产综合在线精品 | 99热.com | 在线观看视频 | 欧美日韩视频在线播放 | 成人在线免费观看视视频 | 国产一区在线视频 | 911国产| 国产亚洲精品久久久久久久久久 | 97视频在线观看播放 | 久久九九视频 | 一区二区三区在线视频观看58 | 92中文资源在线 | 99av国产精品欲麻豆 | 97人人澡人人爽人人模亚洲 | 天天干天天搞天天射 | 久久人人爽人人片av | 亚洲日日夜夜 | 日韩欧美综合在线视频 | 成人免费共享视频 | 精品国产一区二区三区不卡 | 亚洲国产精品激情在线观看 | 婷婷视频在线观看 | 丁香婷婷自拍 | 中文字幕在线观看免费高清完整版 | 亚洲国产精品成人精品 | 精一区二区 | 久久精品这里都是精品 | 免费观看的av网站 | 色99导航 | 玖玖在线观看视频 | 热久久影视 | 综合久久久久久 | 欧美精品中文在线免费观看 | 国产成人精品区 | 国产精品1区2区3区在线观看 | 最近免费中文字幕 | 日韩欧美视频二区 | 日韩精品视 | 看v片 | 精品久久久久国产免费第一页 | 亚洲黄色网络 | 久久玖| av成年人电影 | 亚洲性xxxx| 日韩电影一区二区在线观看 | 国产精品都在这里 | 色婷婷午夜 | 激情伊人五月天 | 久久99九九99精品 | 福利视频网站 | 在线看日韩av | 激情五月在线视频 | 天天操天天玩 | 精品视频免费在线 | 国产精品99久久久久久小说 | 欧美一区二区在线免费看 | 亚洲国产免费网站 | 五月激情久久 | 国产精品va| 日韩影视精品 | 麻豆播放| 亚洲精品小视频在线观看 | 欧美日本啪啪无遮挡网站 | 日本韩国在线不卡 | 一本一本久久a久久 | 精品视频免费播放 | 91片黄在线观看动漫 | 欧美日韩精品综合 | 久草网在线 | 香蕉在线视频播放网站 | 99欧美精品| 久久午夜色播影院免费高清 | 四虎在线免费观看 | 国产日韩精品一区二区在线观看播放 | 成年人视频免费在线 | 精品一区二区免费 | 久久精品一区二区 | 在线观看亚洲精品 | 精品视频99| 在线国产能看的 | 中国精品一区二区 | 日韩综合一区二区三区 | av动态图片 | 久草在线精品观看 | 激情综合狠狠 | 91av电影网 | 欧美精品久久久久久久久久白贞 | 国产一级一级国产 | 九九在线精品视频 | 国产一区播放 | 在线成人一区 | www久久精品 | 人人插人人插 | 91在线超碰 | 中文字幕色在线视频 | 波多野结衣最新 | 久久色在线播放 | 一区二区日韩av | av+在线播放在线播放 | 婷婷综合导航 | 久香蕉 | 在线精品在线 | 国产一区二区免费看 | 婷婷久久综合网 | 国产视频精品在线 | 国产成人亚洲精品自产在线 | 91精品国产乱码久久桃 | 国产色在线视频 | 国产高清综合 | 日韩精品不卡在线 | 狠狠干狠狠插 | 国产欧美综合视频 | 麻豆免费精品视频 | av在线专区 | 日韩av手机在线看 | 亚洲一区二区麻豆 | 亚洲v欧美v国产v在线观看 | 精品一区二区久久久久久久网站 | 黄色三级在线 | 国产精品美乳一区二区免费 | 精品国产免费观看 | 中文字幕黄网 | 国产精品区一区 | 欧美日韩高清在线一区 | 黄色精品久久久 | 欧美一区二区三区激情视频 | 久久久久成人精品 | 亚洲高清在线观看视频 | 啪啪精品 | 天天综合网 天天 | 亚洲精品在线播放视频 | 久久国产精品免费一区二区三区 | 国产精品九九九九九九 | 少妇bbb好爽 | 99久久精品久久久久久清纯 | 国产日本亚洲 | 久久人人爽人人爽人人片av软件 | 国产亚洲免费的视频看 | 中文字幕大全 | 国产成人精品久久久久 | 激情欧美丁香 | 久久免费精品一区二区三区 | 天天躁天天狠天天透 | 国产免费叼嘿网站免费 | 色网站黄 | 午夜精品视频免费在线观看 | 国产日韩在线播放 | 成年人免费看片网站 | 伊人久久国产精品 | www夜夜操com | 狠狠色丁香婷婷综合视频 | 国语自产偷拍精品视频偷 | 成人作爱视频 | 久久久免费看视频 | 亚洲精品日韩在线观看 | 看片的网址 | 欧美日韩成人一区 | 草久久久| 亚洲精品国产成人 | 欧美极品久久 | 狠狠色丁香婷婷综合 | 在线观看视频99 | 欧美日韩精品网站 | 最新中文在线视频 | 欧美日韩一级在线 | 免费91在线| 久久久网站| 黄色av影院 | 欧美精品久久久久久久久久白贞 | 91最新在线| 日本久久久久久久久久 | 亚洲精品美女久久久久网站 | 久久一区二区三区日韩 | 青春草国产视频 | 日韩xxx视频 | 欧美日韩xxx | 日本黄色大片免费看 | 久久96 | 激情视频网页 | 午夜精品剧场 | 在线观看成人av | 91视频高清免费 | 国产h片在线观看 | 欧美成人h版电影 | 婷婷激情站 | 91av在线播放 | 精品国产一区二区三区久久久蜜臀 | 久久久久草 | 黄网站色视频免费观看 | 国产在线观看网站 | 亚洲综合视频在线 | 伊人婷婷色 | 免费观看黄 | 国产一区在线视频观看 | 午夜精品一区二区三区可下载 | 亚洲一区av | 人人爽夜夜爽 | 日韩三级精品 | 91精品国自产在线偷拍蜜桃 | 在线观看你懂的网址 | 大荫蒂欧美视频另类xxxx | 91手机在线看片 | 91人人澡人人爽 | 精品影院 | 久久蜜桃av | 91热爆视频| 午夜成人影视 | 欧美电影在线观看 | 黄色www在线观看 | 免费大片黄在线 | 久久久久久美女 | 91激情视频在线观看 | 精品 激情| 久久久久久久福利 | 亚洲综合欧美激情 | 日韩视频一区二区 | 欧美久久久久久 | 国产视频在线观看一区二区 | 伊人日日干 | 91精品国产乱码久久桃 | 国产免费精彩视频 | 国产精品久久久久久久久岛 | 免费国产在线精品 | 成人a视频片观看免费 | 欧美精品一区二区性色 | 国产一二区视频 | 美女免费黄网站 | 精品久久1 | 国产涩图 | 精品国产乱码久久久久久浪潮 | 国产亚洲视频中文字幕视频 | 一级一片免费观看 | 一级一片免费观看 | 色综合www | 极品嫩模被强到高潮呻吟91 | 亚洲乱码在线观看 | 婷婷电影在线观看 | 夜夜骑日日操 | 四虎成人精品永久免费av九九 | 四虎5151久久欧美毛片 | 欧洲一区二区三区精品 | 亚洲黄色免费在线看 | 成人av免费播放 | 丰满少妇在线观看 | 日韩欧美在线综合网 | 中文字幕免费国产精品 | 成人观看视频 | 中文字幕超清在线免费 | 日日摸日日添夜夜爽97 | 精品国产区 | 国产在线观看91 | a在线观看免费视频 | 国产手机av在线 | 国产在线理论片 | 福利av在线 | 在线午夜电影神马影院 | 亚洲一区二区三区91 | 激情婷婷在线观看 | 久久久资源网 | 色wwwww| 成人中文字幕在线观看 | 日韩视频欧美视频 | 亚洲成人国产 | 国产成人精品一区二区三区福利 | 五月激情视频 | 日韩av电影一区 | 国产精品久久久久久久7电影 | 国产成人精品久久久久蜜臀 | 亚洲视频在线免费观看 | 成人久久久久久久久久 | 国产日韩精品一区二区在线观看播放 | 久久久不卡影院 | 免费a网站| 日韩一区二区在线免费观看 | 久久99精品久久久久婷婷 | av品善网 | 久久黄色成人 | 国产另类xxxxhd高清 | 日韩激情免费视频 | 视频一区视频二区在线观看 | 黄色小网站在线观看 | 91精品国产综合久久福利不卡 | 开心激情综合网 | 色婷婷免费视频 | 在线天堂亚洲 | 毛片a级片 | 国产中文字幕视频在线观看 | 久草在线观看 | 精品九九久久 | 99久久爱 | 亚洲乱码在线观看 | 黄色小视频在线观看免费 | 天天插狠狠插 | 日韩欧美大片免费观看 | 成人影片在线播放 | 久久日韩精品 | 91在线观看视频 | 久久久国产99久久国产一 | 久久久久久久久毛片精品 | 91精品国产乱码 | 国产一级一片免费播放放 | 成年人网站免费在线观看 | www色网站| 少妇bbbb | 久久精品综合一区 | 色婷婷综合久久久 | 日韩av快播电影网 | 国产精彩视频一区 | 91精品国产综合久久婷婷香蕉 | 国产成人一区二区啪在线观看 | 国产免费又粗又猛又爽 | 中文字幕免费国产精品 | 国产黄在线免费观看 | 91久久久久久国产精品 | 九色琪琪久久综合网天天 | 久久久精品免费看 | 色综合天天干 | 天堂av在线免费 | www最近高清中文国语在线观看 | 色婷婷 亚洲 | 伊人久久av | www色片| 亚洲精品在线观看中文字幕 | 成人午夜电影在线观看 | 麻豆传媒一区二区 | 又黄又爽又色无遮挡免费 | 蜜臀av网站| 欧美视频18| 亚洲精品在线观看的 | 在线成人高清电影 | 美女黄频视频大全 | 婷婷丁香导航 | 91传媒在线看 | 国产精品淫 | 天堂在线一区 | 久久男人影院 | 91av短视频| 99精品国产高清在线观看 | 免费黄色av片 | 欧美中文字幕久久 | 激情久久久久久久久久久久久久久久 | 日韩视频中文字幕 | 99爱视频在线观看 | 日韩欧美视频一区二区 | 国产aaa免费视频 | 久久国产精品网站 | 亚洲天堂自拍视频 | 欧美福利片在线观看 | 久久少妇免费视频 | 久久久久久久久久久久久久电影 | 最新的av网站 | 国产色在线| 国产伦理一区二区三区 | 精品国产一区二区三区av性色 |