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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

结合代码详细聊聊 Java 网络编程中的 BIO、NIO 和 AIO

發布時間:2025/3/21 java 67 豆豆
生活随笔 收集整理的這篇文章主要介紹了 结合代码详细聊聊 Java 网络编程中的 BIO、NIO 和 AIO 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文從操作系統的角度來解釋BIO,NIO,AIO的概念,含義和背后的那些事。本文主要分為3篇。

  • 第一篇?講解BIO和NIO以及IO多路復用

  • 第二篇?講解磁盤IO和AIO

  • 第三篇 講解在這些機制上的一些應用的實現方式,比如nginx,nodejs,Java NIO等

到底什么是“IO Block”

很多人說BIO不好,會“block”,但到底什么是IO的Block呢?考慮下面兩種情況:

  • 用系統調用read從socket里讀取一段數據

  • 用系統調用read從一個磁盤文件讀取一段數據到內存

如果你的直覺告訴你,這兩種都算“Block”,那么很遺憾,你的理解與Linux不同。Linux認為:

  • 對于第一種情況,算作block,因為Linux無法知道網絡上對方是否會發數據。如果沒數據發過來,對于調用read的程序來說,就只能“等”。

  • 對于第二種情況,不算做block

是的,對于磁盤文件IO,Linux總是不視作Block。

你可能會說,這不科學啊,磁盤讀寫偶爾也會因為硬件而卡殼啊,怎么能不算Block呢?但實際就是不算。

一個解釋是,所謂“Block”是指操作系統可以預見這個Block會發生才會主動Block。例如當讀取TCP連接的數據時,如果發現Socket buffer里沒有數據就可以確定定對方還沒有發過來,于是Block;而對于普通磁盤文件的讀寫,也許磁盤運作期間會抖動,會短暫暫停,但是操作系統無法預見這種情況,只能視作不會Block,照樣執行。

基于這個基本的設定,在討論IO時,一定要嚴格區分網絡IO和磁盤文件IO。NIO和后文講到的IO多路復用只對網絡IO有意義。

嚴格的說,O_NONBLOCK和IO多路復用,對標準輸入輸出描述符、管道和FIFO也都是有效的。但本文側重于討論高性能網絡服務器下各種IO的含義和關系,所以本文做了簡化,只提及網絡IO和磁盤文件IO兩種情況。

本文先著重講一下網絡IO。

BIO

有了Block的定義,就可以討論BIO和NIO了。BIO是Blocking IO的意思。在類似于網絡中進行read,?write,?connect一類的系統調用時會被卡住。

舉個例子,當用read去讀取網絡的數據時,是無法預知對方是否已經發送數據的。因此在收到數據之前,能做的只有等待,直到對方把數據發過來,或者等到網絡超時。

對于單線程的網絡服務,這樣做就會有卡死的問題。因為當等待時,整個線程會被掛起,無法執行,也無法做其他的工作。

順便說一句,這種Block是不會影響同時運行的其他程序(進程)的,因為現代操作系統都是多任務的,任務之間的切換是搶占式的。這里Block只是指Block當前的進程。

于是,網絡服務為了同時響應多個并發的網絡請求,必須實現為多線程的。每個線程處理一個網絡請求。線程數隨著并發連接數線性增長。這的確能奏效。實際上2000年之前很多網絡服務器就是這么實現的。但這帶來兩個問題:

  • 線程越多,Context Switch就越多,而Context Switch是一個比較重的操作,會無謂浪費大量的CPU。

  • 每個線程會占用一定的內存作為線程的棧。比如有1000個線程同時運行,每個占用1MB內存,就占用了1個G的內存。

也許現在看來1GB內存不算什么,現在服務器上百G內存的配置現在司空見慣了。但是倒退20年,1G內存是很金貴的。并且,盡管現在通過使用大內存,可以輕易實現并發1萬甚至10萬的連接。但是水漲船高,如果是要單機撐1千萬的連接呢?

問題的關鍵在于,當調用read接受網絡請求時,有數據到了就用,沒數據到時,實際上是可以干別的。使用大量線程,僅僅是因為Block發生,沒有其他辦法。

當然你可能會說,是不是可以弄個線程池呢?這樣既能并發的處理請求,又不會產生大量線程。但這樣會限制最大并發的連接數。比如你弄4個線程,那么最大4個線程都Block了就沒法響應更多請求了。

要是操作IO接口時,操作系統能夠總是直接告訴有沒有數據,而不是Block去等就好了。于是,NIO登場。

NIO

NIO是指將IO模式設為“Non-Blocking”模式。在Linux下,一般是這樣:

void?setnonblocking(int?fd)?{int?flags?=?fcntl(fd,?F_GETFL,?0);fcntl(fd,?F_SETFL,?flags?|?O_NONBLOCK); }

再強調一下,以上操作只對socket對應的文件描述符有意義;對磁盤文件的文件描述符做此設置總會成功,但是會直接被忽略。

這時,BIO和NIO的區別是什么呢?

在BIO模式下,調用read,如果發現沒數據已經到達,就會Block住。

在NIO模式下,調用read,如果發現沒數據已經到達,就會立刻返回-1, 并且errno被設為EAGAIN。

在有些文檔中寫的是會返回EWOULDBLOCK。實際上,在Linux下EAGAIN和EWOULDBLOCK是一樣的,即#define EWOULDBLOCK EAGAIN

于是,一段NIO的代碼,大概就可以寫成這個樣子。

struct?timespec?sleep_interval{.tv_sec?=?0,?.tv_nsec?=?1000}; ssize_t?nbytes; while?(1)?{/*?嘗試讀取?*/if?((nbytes?=?read(fd,?buf,?sizeof(buf)))?<?0)?{if?(errno?==?EAGAIN)?{?//?沒數據到perror("nothing?can?be?read");}?else?{perror("fatal?error");exit(EXIT_FAILURE);}}?else?{?//?有數據process_data(buf,?nbytes);}//?處理其他事情,做完了就等一會,再嘗試nanosleep(sleep_interval,?NULL); }

這段代碼很容易理解,就是輪詢,不斷的嘗試有沒有數據到達,有了就處理,沒有(得到EWOULDBLOCK或者EAGAIN)就等一小會再試。這比之前BIO好多了,起碼程序不會被卡死了。

但這樣會帶來兩個新問題:

  • 如果有大量文件描述符都要等,那么就得一個一個的read。這會帶來大量的Context Switch(read是系統調用,每調用一次就得在用戶態和核心態切換一次)

  • 休息一會的時間不好把握。這里是要猜多久之后數據才能到。等待時間設的太長,程序響應延遲就過大;設的太短,就會造成過于頻繁的重試,干耗CPU而已。

要是操作系統能一口氣告訴程序,哪些數據到了就好了。

于是IO多路復用被搞出來解決這個問題。

IO多路復用

IO多路復用(IO Multiplexing) 是這么一種機制:程序注冊一組socket文件描述符給操作系統,表示“我要監視這些fd是否有IO事件發生,有了就告訴程序處理”。

IO多路復用是要和NIO一起使用的。盡管在操作系統級別,NIO和IO多路復用是兩個相對獨立的事情。NIO僅僅是指IO API總是能立刻返回,不會被Blocking;而IO多路復用僅僅是操作系統提供的一種便利的通知機制。操作系統并不會強制這倆必須得一起用——你可以用NIO,但不用IO多路復用,就像上一節中的代碼;也可以只用IO多路復用 + BIO,這時效果還是當前線程被卡住。但是,IO多路復用和NIO是要配合一起使用才有實際意義。因此,在使用IO多路復用之前,請總是先把fd設為O_NONBLOCK。

對IO多路復用,還存在一些常見的誤解,比如:

  • ?IO多路復用是指多個數據流共享同一個Socket。其實IO多路復用說的是多個Socket,只不過操作系統是一起監聽他們的事件而已。

多個數據流共享同一個TCP連接的場景的確是有,比如Http2 Multiplexing就是指Http2通訊中中多個邏輯的數據流共享同一個TCP連接。但這與IO多路復用是完全不同的問題。

  • ?IO多路復用是NIO,所以總是不Block的。其實IO多路復用的關鍵API調用(select,poll,epoll_wait)總是Block的,正如下文的例子所講。

  • ?IO多路復用和NIO一起減少了IO。實際上,IO本身(網絡數據的收發)無論用不用IO多路復用和NIO,都沒有變化。請求的數據該是多少還是多少;網絡上該傳輸多少數據還是多少數據。IO多路復用和NIO一起僅僅是解決了調度的問題,避免CPU在這個過程中的浪費,使系統的瓶頸更容易觸達到網絡帶寬,而非CPU或者內存。要提高IO吞吐,還是提高硬件的容量(例如,用支持更大帶寬的網線、網卡和交換機)和依靠并發傳輸(例如HDFS的數據多副本并發傳輸)。

操作系統級別提供了一些接口來支持IO多路復用,最老掉牙的是select和poll。

select

select長這樣:

int?select(int?nfds,?fd_set?*readfds,?fd_set?*writefds,?fd_set?*exceptfds,?struct?timeval?*timeout);

它接受3個文件描述符的數組,分別監聽讀取(readfds),寫入(writefds)和異常(expectfds)事件。那么一個 IO多路復用的代碼大概是這樣:

struct?timeval?tv?=?{.tv_sec?=?1,?.tv_usec?=?0};ssize_t?nbytes; while(1)?{FD_ZERO(&read_fds);setnonblocking(fd1);setnonblocking(fd2);FD_SET(fd1,?&read_fds);FD_SET(fd2,?&read_fds);//?把要監聽的fd拼到一個數組里,而且每次循環都得重來一次...if?(select(FD_SETSIZE,?&read_fds,?NULL,?NULL,?&tv)?<?0)?{?//?block住,直到有事件到達perror("select出錯了");exit(EXIT_FAILURE);}for?(int?i?=?0;?i?<?FD_SETSIZE;?i++)?{if?(FD_ISSET(i,?&read_fds))?{/*?檢測到第[i]個讀取fd已經收到了,這里假設buf總是大于到達的數據,所以可以一次read完?*/if?((nbytes?=?read(i,?buf,?sizeof(buf)))?>=?0)?{process_data(nbytes,?buf);}?else?{perror("讀取出錯了");exit(EXIT_FAILURE);}}} }

首先,為了select需要構造一個fd數組(這里為了簡化,沒有構造要監聽寫入和異常事件的fd數組)。之后,用select監聽了read_fds中的多個socket的讀取時間。調用select后,程序會Block住,直到一個事件發生了,或者等到最大1秒鐘(tv定義了這個時間長度)就返回。之后,需要遍歷所有注冊的fd,挨個檢查哪個fd有事件到達(FD_ISSET返回true)。如果是,就說明數據已經到達了,可以讀取fd了。讀取后就可以進行數據的處理。

select有一些發指的缺點:

  • select能夠支持的最大的fd數組的長度是1024。這對要處理高并發的web服務器是不可接受的。

  • fd數組按照監聽的事件分為了3個數組,為了這3個數組要分配3段內存去構造,而且每次調用select前都要重設它們(因為select會改這3個數組);調用select后,這3數組要從用戶態復制一份到內核態;事件到達后,要遍歷這3數組。很不爽。

  • select返回后要挨個遍歷fd,找到被“SET”的那些進行處理。這樣比較低效。

  • select是無狀態的,即每次調用select,內核都要重新檢查所有被注冊的fd的狀態。select返回后,這些狀態就被返回了,內核不會記住它們;到了下一次調用,內核依然要重新檢查一遍。于是查詢的效率很低。

poll

poll與select類似于。它大概長這樣:

int?poll(struct?pollfd?*fds,?nfds_t?nfds,?int?timeout);

poll的代碼例子和select差不多,因此也就不贅述了。有意思的是poll這個單詞的意思是“輪詢”,所以很多中文資料都會提到對IO進行“輪詢”。

上面說的select和下文說的epoll本質上都是輪詢。

poll優化了select的一些問題。比如不再有3個數組,而是1個polldfd結構的數組了,并且也不需要每次重設了。數組的個數也沒有了1024的限制。但其他的問題依舊:

  • 依然是無狀態的,性能的問題與select差不多一樣;

  • 應用程序仍然無法很方便的拿到那些“有事件發生的fd“,還是需要遍歷所有注冊的fd。

目前來看,高性能的web服務器都不會使用select和poll。他們倆存在的意義僅僅是“兼容性”,因為很多操作系統都實現了這兩個系統調用。

如果是追求性能的話,在BSD/macOS上提供了kqueue api;在Salorias中提供了/dev/poll(可惜該操作系統已經涼涼);而在Linux上提供了epoll api。它們的出現徹底解決了select和poll的問題。Java NIO,nginx等在對應的平臺的上都是使用這些api實現。

因為大部分情況下我會用Linux做服務器,所以下文以Linux epoll為例子來解釋多路復用是怎么工作的。

用epoll實現的IO多路復用

epoll是Linux下的IO多路復用的實現。這里單開一章是因為它非常有代表性,并且Linux也是目前最廣泛被作為服務器的操作系統。細致的了解epoll對整個IO多路復用的工作原理非常有幫助。

與select和poll不同,要使用epoll是需要先創建一下的。

int?epfd?=?epoll_create(10);

epoll_create在內核層創建了一個數據表,接口會返回一個“epoll的文件描述符”指向這個表。注意,接口參數是一個表達要監聽事件列表的長度的數值。但不用太在意,因為epoll內部隨后會根據事件注冊和事件注銷動態調整epoll中表格的大小。

epoll創建

為什么epoll要創建一個用文件描述符來指向的表呢?這里有兩個好處:

  • epoll是有狀態的,不像select和poll那樣每次都要重新傳入所有要監聽的fd,這避免了很多無謂的數據復制。epoll的數據是用接口epoll_ctl來管理的(增、刪、改)。

  • epoll文件描述符在進程被fork時,子進程是可以繼承的。這可以給對多進程共享一份epoll數據,實現并行監聽網絡請求帶來便利。但這超過了本文的討論范圍,就此打住。

epoll創建后,第二步是使用epoll_ctl接口來注冊要監聽的事件。

int?epoll_ctl(int?epfd,?int?op,?int?fd,?struct?epoll_event?*event);

其中第一個參數就是上面創建的epfd。第二個參數op表示如何對文件名進行操作,共有3種。

  • EPOLL_CTL_ADD?- 注冊一個事件

  • EPOLL_CTL_DEL?- 取消一個事件的注冊

  • EPOLL_CTL_MOD?- 修改一個事件的注冊

第三個參數是要操作的fd,這里必須是支持NIO的fd(比如socket)。

第四個參數是一個epoll_event的類型的數據,表達了注冊的事件的具體信息。

typedef?union?epoll_data?{void????*ptr;int??????fd;uint32_t?u32;uint64_t?u64; }?epoll_data_t;struct?epoll_event?{uint32_t?????events;????/*?Epoll?events?*/epoll_data_t?data;??????/*?User?data?variable?*/ };

比方說,想關注一個fd1的讀取事件事件,并采用邊緣觸發(下文會解釋什么是邊緣觸發),大概要這么寫:

struct?epoll_data?ev; ev.events?=?EPOLLIN?|?EPOLLET;?//?EPOLLIN表示讀事件;EPOLLET表示邊緣觸發 ev.data.fd?=?fd1;

通過epoll_ctl就可以靈活的注冊/取消注冊/修改注冊某個fd的某些事件。

管理fd事件注冊

第三步,使用epoll_wait來等待事件的發生。

int?epoll_wait(int?epfd,?struct?epoll_event?*evlist,?int?maxevents,?int?timeout);

特別留意,這一步是"block"的。只有當注冊的事件至少有一個發生,或者timeout達到時,該調用才會返回。這與select和poll幾乎一致。但不一樣的地方是evlist,它是epoll_wait的返回數組,里面只包含那些被觸發的事件對應的fd,而不是像select和poll那樣返回所有注冊的fd。

監聽fd事件

綜合起來,一段比較完整的epoll代碼大概是這樣的。

#define?MAX_EVENTS?10 struct?epoll_event?ev,?events[MAX_EVENTS]; int?nfds,?epfd,?fd1,?fd2;//?假設這里有兩個socket,fd1和fd2,被初始化好。 //?設置為non?blocking setnonblocking(fd1); setnonblocking(fd2);//?創建epoll epfd?=?epoll_create(MAX_EVENTS); if?(epollfd?==?-1)?{perror("epoll_create1");exit(EXIT_FAILURE); }//注冊事件 ev.events?=?EPOLLIN?|?EPOLLET; ev.data.fd?=?fd1; if?(epoll_ctl(epollfd,?EPOLL_CTL_ADD,?fd1,?&ev)?==?-1)?{perror("epoll_ctl:?error?register?fd1");exit(EXIT_FAILURE); } if?(epoll_ctl(epollfd,?EPOLL_CTL_ADD,?fd2,?&ev)?==?-1)?{perror("epoll_ctl:?error?register?fd2");exit(EXIT_FAILURE); }//?監聽事件 for?(;;)?{nfds?=?epoll_wait(epdf,?events,?MAX_EVENTS,?-1);if?(nfds?==?-1)?{perror("epoll_wait");exit(EXIT_FAILURE);}for?(n?=?0;?n?<?nfds;?++n)?{?//?處理所有發生IO事件的fdprocess_event(events[n].data.fd);//?如果有必要,可以利用epoll_ctl繼續對本fd注冊下一次監聽,然后重新epoll_wait} }

此外,epoll的手冊?中也有一個簡單的例子。

所有的基于IO多路復用的代碼都會遵循這樣的寫法:注冊——監聽事件——處理——再注冊,無限循環下去。

epoll的優勢

為什么epoll的性能比select和poll要強呢??select和poll每次都需要把完成的fd列表傳入到內核,迫使內核每次必須從頭掃描到尾。而epoll完全是反過來的。epoll在內核的數據被建立好了之后,每次某個被監聽的fd一旦有事件發生,內核就直接標記之。epoll_wait調用時,會嘗試直接讀取到當時已經標記好的fd列表,如果沒有就會進入等待狀態。

同時,epoll_wait直接只返回了被觸發的fd列表,這樣上層應用寫起來也輕松愉快,再也不用從大量注冊的fd中篩選出有事件的fd了。

簡單說就是select和poll的代價是"O(所有注冊事件fd的數量)",而epoll的代價是"O(發生事件fd的數量)"。于是,高性能網絡服務器的場景特別適合用epoll來實現——因為大多數網絡服務器都有這樣的模式:同時要監聽大量(幾千,幾萬,幾十萬甚至更多)的網絡連接,但是短時間內發生的事件非常少。

但是,假設發生事件的fd的數量接近所有注冊事件fd的數量,那么epoll的優勢就沒有了,其性能表現會和poll和select差不多。

epoll除了性能優勢,還有一個優點——同時支持水平觸發(Level Trigger)和邊沿觸發(Edge Trigger)。

水平觸發和邊沿觸發

默認情況下,epoll使用水平觸發,這與select和poll的行為完全一致。在水平觸發下,epoll頂多算是一個“跑得更快的poll”。

而一旦在注冊事件時使用了EPOLLET標記(如上文中的例子),那么將其視為邊沿觸發(或者有地方叫邊緣觸發,一個意思)。那么到底什么水平觸發和邊沿觸發呢?

考慮下圖中的例子。有兩個socket的fd——fd1和fd2。我們設定監聽f1的“水平觸發讀事件“,監聽fd2的”邊沿觸發讀事件“。我們使用在時刻t1,使用epoll_wait監聽他們的事件。在時刻t2時,兩個fd都到了100bytes數據,于是在時刻t3,?epoll_wait返回了兩個fd進行處理。在t4,我們故意不讀取所有的數據出來,只各自讀50bytes。然后在t5重新注冊兩個事件并監聽。在t6時,只有fd1會返回,因為fd1里的數據沒有讀完,仍然處于“被觸發”狀態;而fd2不會被返回,因為沒有新數據到達。

水平觸發和邊沿觸發

這個例子很明確的顯示了水平觸發和邊沿觸發的區別。

  • 水平觸發只關心文件描述符中是否還有沒完成處理的數據,如果有,不管怎樣epoll_wait,總是會被返回。簡單說——水平觸發代表了一種“狀態”。

  • 邊沿觸發只關心文件描述符是否有的事件產生,如果有,則返回;如果返回過一次,不管程序是否處理了,只要沒有新的事件產生,epoll_wait不會再認為這個fd被“觸發”了。簡單說——邊沿觸發代表了一個“事件”。

那么邊沿觸發怎么才能迫使新事件產生呢?一般需要反復調用read/write這樣的IO接口,直到得到了EAGAIN錯誤碼,再去嘗試epoll_wait才有可能得到下次事件。

那么為什么需要邊沿觸發呢?

邊沿觸發把如何處理數據的控制權完全交給了開發者,提供了巨大的靈活性。比如,讀取一個http的請求,開發者可以決定只讀取http中的headers數據就停下來,然后根據業務邏輯判斷是否要繼續讀(比如需要調用另外一個服務來決定是否繼續讀)。而不是次次被socket尚有數據的狀態煩擾;寫入數據時也是如此。比如希望將一個資源A寫入到socket。當socket的buffer充足時,epoll_wait會返回這個fd是準備好的。但是資源A此時不一定準備好。如果使用水平觸發,每次經過epoll_wait也總會被打擾。在邊沿觸發下,開發者有機會更精細的定制這里的控制邏輯。

但不好的一面時,邊沿觸發也大大的提高了編程的難度。一不留神,可能就會miss掉處理部分socket數據的機會。如果沒有很好的根據EAGAIN來“重置”一個fd,就會造成此fd永遠沒有新事件產生,進而導致餓死相關的處理代碼。

再來思考一下什么是“Block”

上面的所有介紹都在圍繞如何讓網絡IO不會被Block。但是網絡IO處理僅僅是整個數據處理中的一部分。如果你留意到上文例子中的“處理事件”代碼,就會發現這里可能是有問題的。

  • 處理代碼有可能需要讀寫文件,可能會很慢,從而干擾整個程序的效率;

  • 處理代碼有可能是一段復雜的數據計算,計算量很大的話,就會卡住整個執行流程;

  • 處理代碼有bug,可能直接進入了一段死循環……

這時你會發現,這里的Block和本文之初講的O_NONBLOCK是不同的事情。在一個網絡服務中,如果處理程序的延遲遠遠小于網絡IO,那么這完全不成問題。但是如果處理程序的延遲已經大到無法忽略了,就會對整個程序產生很大的影響。這時IO多路復用已經不是問題的關鍵。

試分析和比較下面兩個場景:

  • web proxy。程序通過IO多路復用接收到了請求之后,直接轉發給另外一個網絡服務。

  • web server。程序通過IO多路復用接收到了請求之后,需要讀取一個文件,并返回其內容。

它們有什么不同?它們的瓶頸可能出在哪里?

總結

小結一下本文:

  • 對于socket的文件描述符才有所謂BIO和NIO。

  • 多線程+BIO模式會帶來大量的資源浪費,而NIO+IO多路復用可以解決這個問題。

  • 在Linux下,基于epoll的IO多路復用是解決這個問題的最佳方案;epoll相比select和poll有很大的性能優勢和功能優勢,適合實現高性能網絡服務。

但是IO多路復用僅僅是解決了一部分問題,另外一部分問題如何解決呢?且聽下回分解。

總結

以上是生活随笔為你收集整理的结合代码详细聊聊 Java 网络编程中的 BIO、NIO 和 AIO的全部內容,希望文章能夠幫你解決所遇到的問題。

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

日韩av影片在线观看 | 五月花婷婷 | 色播亚洲婷婷 | 在线观看国产永久免费视频 | 久久久久国产精品午夜一区 | 97av视频在线观看 | 欧美日本国产在线观看 | www国产精品com | 六月婷婷久香在线视频 | 色黄视频免费观看 | 99热精品国产一区二区在线观看 | 美女视频黄网站 | 国产一区二区精品久久91 | 亚洲日韩精品欧美一区二区 | 国产亚洲精品久久久久秋 | 91黄色在线看| 国产精品久久久久久一区二区三区 | av三级av| 天天爽夜夜爽精品视频婷婷 | 97色se | 狠狠的干 | 亚洲精品成人av在线 | 91精品久久久久久久91蜜桃 | 99视频精品免费观看, | 在线播放 日韩专区 | 亚洲第一色 | 亚洲好视频 | 亚洲日本三级 | 探花视频在线观看+在线播放 | av高清一区二区三区 | 欧美日本日韩aⅴ在线视频 插插插色综合 | 成人在线视频论坛 | 国产中文字幕国产 | 在线观看91精品视频 | 日韩黄色在线电影 | 国产精品淫 | 色播五月婷婷 | 久久免费视频5 | 99综合影院在线 | 不卡的av在线播放 | 亚洲日日日 | 婷婷色网| 免费在线成人 | 欧美精品久久久久久久久久白贞 | 亚洲精品欧美成人 | 三上悠亚一区二区在线观看 | 伊人激情网 | 天天干亚洲 | 亚洲天堂首页 | 最新国产精品视频 | 一区二区三区免费在线观看视频 | 欧美日韩精品二区第二页 | 欧美日韩午夜爽爽 | 伊人影院得得 | 色综合国产 | 欧洲一区二区在线观看 | 天天综合网天天综合色 | 色欧美成人精品a∨在线观看 | 日韩电影在线观看一区 | 国产高清在线不卡 | 久久精品视 | 91原创在线观看 | 成人av高清在线观看 | 五月婷婷.com | 中文字幕在线一区观看 | 日本三级吹潮在线 | 亚洲精品视频二区 | 在线观看亚洲国产 | 黄色成人av在线 | 欧美性护士 | 99热在线免费观看 | 亚洲综合激情网 | 天天干天天碰 | 国产精品免费久久久久久 | 99精品欧美一区二区蜜桃免费 | 99热精品在线观看 | 欧美日韩成人一区 | 亚洲国产电影在线观看 | 国产综合激情 | 国产字幕在线看 | 国产精品wwwwww| 五月婷香蕉久色在线看 | 亚洲国产午夜 | 免费精品国产va自在自线 | 久久久久久久久久久福利 | 天天做天天爱天天爽综合网 | 97色婷婷| 激情偷乱人伦小说视频在线观看 | 91av国产视频| 国产精品9999| 久热只有精品 | 激情网站网址 | 四虎精品成人免费网站 | 久久久久久国产精品亚洲78 | 国产网红在线 | 91香蕉视频好色先生 | 日韩精品在线视频 | 激情网第四色 | 国产五十路毛片 | 深爱婷婷 | 在线观看免费国产小视频 | 国产高清网站 | 亚洲jizzjizz日本少妇 | 99久热在线精品视频成人一区 | 国产精品欧美久久久久无广告 | 亚洲精品久久久久久久蜜桃 | 国产在线2020 | 9久久精品 | 国产精品久久嫩一区二区免费 | 精品国产精品久久 | 欧美一区二区三区在线看 | 日本最新中文字幕 | 中文字幕一区二区三区乱码在线 | 欧日韩在线 | 成年人黄色免费网站 | 91香蕉久久 | 亚洲成人软件 | 深夜免费福利 | 超碰97在线资源站 | 日韩欧美精品在线观看视频 | 国内成人av | 中文字幕a∨在线乱码免费看 | 亚洲 欧美变态 另类 综合 | 亚洲视频精品 | 国产成人在线免费观看 | 西西4444www大胆无视频 | 欧美另类视频 | 国产视频精品免费播放 | 日韩在线三区 | 日本久久精品视频 | 久久久久国产a免费观看rela | 亚洲视频久久久久 | 九精品| 久久综合久久综合久久综合 | 91精品国产一区二区在线观看 | 人人澡人摸人人添学生av | 国产一级在线免费观看 | 在线播放亚洲激情 | 国产亚洲精品xxoo | 91在线观 | 91大神精品视频 | 天天玩天天操天天射 | 成人av电影免费 | 亚洲在线视频免费观看 | 国产99久久久欧美黑人 | 国产精品女教师 | 综合激情 | 国产日产精品久久久久快鸭 | 91视频网址入口 | 8090yy亚洲精品久久 | 国产专区视频在线观看 | 91豆麻精品91久久久久久 | 久草热久草视频 | 中文字幕国产在线 | 国产香蕉97碰碰久久人人 | 成人亚洲免费 | 最新超碰| 五月婷婷六月丁香 | 日韩极品在线 | 91精品国产自产91精品 | 三级av网站 | 亚洲少妇xxxx | 欧美二区三区91 | 99久久这里有精品 | 69视频国产 | 国产高清在线免费 | 中国精品少妇 | 国产xx视频| 中文亚洲欧美日韩 | 日韩欧美视频在线播放 | 99久久电影| 国产xx在线 | 午夜10000| 97视频在线观看视频免费视频 | 天天操天天射天天舔 | 亚洲午夜精品久久久 | 超碰免费在线公开 | 国产黄色片免费看 | 成人资源在线 | 波多野结衣亚洲一区二区 | 九九激情视频 | 黄色av高清| 91看片网址 | 国产精品久久久久久久久久妇女 | 999在线精品 | 在线看污网站 | 欧美精品第一 | 日日夜夜网| 国产精品一区在线观看 | 亚洲欧洲精品一区二区 | 99精品久久99久久久久 | 国产在线观看免费观看 | 在线一区av| 国产剧情在线一区 | 天天操天天色天天射 | 国产免费国产 | 中文字幕在线第一页 | 亚洲免费在线播放视频 | 伊人伊成久久人综合网小说 | 99热这里是精品 | 日本丶国产丶欧美色综合 | 亚洲日本成人网 | 国内精品在线看 | 中文在线字幕免 | 中文字幕中文字幕中文字幕 | 午夜精品视频一区 | 免费高清在线观看电视网站 | 亚洲在线激情 | 免费网站在线观看人 | 日韩精品一区在线观看 | 不卡av免费在线观看 | 亚洲精品午夜久久久久久久久久久 | 日本视频高清 | 婷婷福利影院 | 国产精品综合久久久久久 | 久久久精品国产免费观看同学 | 成人精品久久久 | 天天操天天干天天操天天干 | 丁香国产视频 | 亚洲经典视频 | 四虎影视国产精品免费久久 | 国产特级毛片aaaaaa毛片 | 亚洲色影爱久久精品 | 国产拍揄自揄精品视频麻豆 | 一区二区三区影院 | 国产精品一区在线观看你懂的 | 成人小视频在线观看免费 | 久久精品视频国产 | 美女网站免费福利视频 | 久久这里只有精品首页 | 色婷婷www| 国产一区二区在线免费 | 日韩av伦理片 | 91av在线免费观看 | 久久免费资源 | 91成人网在线| 色资源中文字幕 | 国产精品久久久久三级 | 国产精品99久久久久久人免费 | 亚洲精品国产精品国自 | 91完整视频 | www色com| 色视频网站在线观看一=区 a视频免费在线观看 | 精品久久久久久久 | 手机在线看a | 国产精品久久99综合免费观看尤物 | 欧美视频日韩 | 中文字幕黄色av | 91资源在线播放 | 国产精品2018 | 日本一区二区三区免费看 | 婷婷激情av | 操碰av| 手机在线看永久av片免费 | 亚洲精品美女在线观看 | 丁香资源影视免费观看 | 可以免费观看的av片 | 婷婷色资源 | 亚洲精品高清在线观看 | 天天撸夜夜操 | 国产成人精品一区二区三区在线 | 欧美专区日韩专区 | 91九色蝌蚪国产 | 日韩视频在线观看免费 | 国产一区二区高清视频 | 久久爽久久爽久久av东京爽 | 国产三级午夜理伦三级 | 亚洲天堂社区 | 欧洲视频一区 | av电影 一区二区 | 91视频传媒 | 亚洲精品国产免费 | 亚洲精品在线观看中文字幕 | 国产亚洲va综合人人澡精品 | 日韩专区 在线 | 日韩日韩日韩日韩 | 欧美日韩高清一区二区 | 午夜手机电影 | 国产精品18久久久久vr手机版特色 | www.com黄| 欧美日韩一区二区久久 | 成人动漫精品一区二区 | 久久久一本精品99久久精品 | 天天插天天狠天天透 | 日日久视频| 国产精品中文字幕在线 | 久久国产精品久久w女人spa | 婷婷丁香久久五月婷婷 | 中文字幕乱码在线播放 | 特级毛片在线免费观看 | 亚洲人成人在线 | 中文国产字幕 | 激情婷婷亚洲 | 九九九九九九精品任你躁 | 久久精品123 | 97电影在线 | 网站免费黄色 | 亚洲午夜激情网 | 天天综合网 天天综合色 | 在线观看国产区 | 久久国产热 | 国产视频在线观看一区 | 激情伊人五月天 | 亚洲精品免费播放 | 日韩精品首页 | 日韩激情在线视频 | 国产毛片在线 | 激情综合婷婷 | 国产视频美女 | 色综合天天在线 | 欧美另类色图 | 97视频人人澡人人爽 | 激情欧美丁香 | 色噜噜日韩精品欧美一区二区 | 丁香婷婷深情五月亚洲 | 日韩在线视频免费播放 | 热久久国产精品 | 91看片看淫黄大片 | 国产精品二区在线 | 欧美日韩性视频 | 在线观看麻豆av | 午夜视频欧美 | 成人资源在线播放 | 6080yy午夜一二三区久久 | 国语对白少妇爽91 | 国产精品99久久免费黑人 | 成人av在线资源 | 国产精品国产自产拍高清av | avv天堂| 一区二区三区视频在线 | 欧美日韩一区二区视频在线观看 | 亚洲理论在线观看电影 | 91少妇精拍在线播放 | 久青草电影 | 欧美成人69av | 四虎免费在线观看视频 | 成人午夜电影网站 | 91免费观看视频在线 | 久久精品小视频 | 久久久午夜剧场 | 国产高清绿奴videos | 日韩av手机在线观看 | 国产精品99蜜臀久久不卡二区 | 综合久久影院 | 久久69精品| 国产午夜在线观看视频 | 黄色片免费在线 | 亚洲狠狠婷婷 | 丁香六月在线观看 | 麻豆视频在线观看免费 | 亚洲高清视频在线观看 | 97精品国产97久久久久久 | 色噜噜在线观看视频 | 亚洲综合激情小说 | a色网站| 十八岁免进欧美 | 91成人精品一区在线播放 | 五月婷婷久草 | 日韩电影一区二区三区在线观看 | 国产在线视频一区二区三区 | 最新日韩视频 | 岛国大片免费视频 | 婷婷.com| 在线a视频免费观看 | 欧美一区二区三区激情视频 | 在线观看中文字幕2021 | 天天干天天射天天操 | 9999精品免费视频 | 九九免费在线观看视频 | 成人免费看片98欧美 | 国产免费观看久久 | 欧美综合在线视频 | www.成人精品 | 久久综合狠狠综合久久激情 | 免费在线激情视频 | 黄色福利视频网站 | 五月天婷婷综合 | av在线播放网址 | 蜜桃av久久久亚洲精品 | 国产免费三级在线观看 | 日韩精品一区二区三区电影 | 天天综合网入口 | 中文字幕免费高清 | 日韩美在线| 岛国av在线 | 伊人天天综合 | a天堂中文在线 | 日韩视频免费看 | 91看片淫黄大片在线播放 | 婷婷色综合网 | 欧美另类交在线观看 | 91热爆在线观看 | 日韩精品一区二区三区免费视频观看 | av亚洲产国偷v产偷v自拍小说 | 最新色站 | 天天操夜操视频 | 久久国产综合视频 | 久久99视频精品 | 国产在线看一区 | 国内丰满少妇猛烈精品播 | 国产高清视频免费最新在线 | 天天色宗合 | 国模吧一区 | 国产精品入口麻豆 | 久久丁香网 | www一起操| 日韩av不卡在线 | 97超碰在线人人 | av韩国在线 | 久久神马影院 | 久久伊人免费视频 | 91视频 - v11av| 亚洲综合激情网 | av福利第一导航 | 国产精品乱码久久 | 亚洲成人黄色av | 欧美性生活一级片 | 久久黄色网 | 日韩免费视频 | 国产日韩欧美在线影视 | 久久免费视频观看 | 精品一区中文字幕 | 免费国产一区二区 | 国产欧美精品一区二区三区 | 亚洲 欧美 91 | 97在线免费观看视频 | 蜜桃麻豆www久久囤产精品 | 黄色小网站免费看 | 欧美精品九九 | 国内视频一区二区 | 久久免费99精品久久久久久 | 日本精品va在线观看 | 在线观看日韩免费视频 | 国产色在线视频 | 国产视频精品久久 | 精品国产一区二区三区在线 | 欧美日韩高清不卡 | 日本久久91 | 欧美一区二区在线看 | 一区二区三区福利 | 日日干av | 欧美日韩不卡在线 | 在线观看久 | 国产护士hd高朝护士1 | 精品91视频 | 人人讲 | 欧美一二区视频 | av高清影院 | 99在线免费观看视频 | 国内精品久久久精品电影院 | 久久亚洲欧美日韩精品专区 | 黄色一级大片在线观看 | 国产精品黄网站在线观看 | 精品亚洲视频在线 | 国产精品video | 免费看一级特黄a大片 | 在线国产欧美 | 精品视频不卡 | 成人小电影在线看 | 日韩欧美高清一区二区三区 | 免费观看福利视频 | 亚洲精品乱码久久久久 | 97精品国产97久久久久久久久久久久 | 日本精品久久久久影院 | 精品在线亚洲视频 | 欧美一级性 | 国产美女免费观看 | 国产成人精品久久久久蜜臀 | 免费观看全黄做爰大片国产 | 国产精品96久久久久久吹潮 | 国产精品久久久久久久免费观看 | 国产美女精品视频免费观看 | 91理论电影 | 国产精品成久久久久三级 | 欧美日本高清视频 | 日韩精品在线播放 | 国产亚洲精品久久久久久大师 | 操夜夜操| 久久高清av | 日本久久久久久 | 亚洲九九九在线观看 | 中文字幕久久久精品 | 久久精品91久久久久久再现 | 精品视频一区在线 | 永久黄网站色视频免费观看w | 天天插天天操天天干 | 欧美激情奇米色 | 国产成人亚洲在线观看 | 国产高清无av久久 | 欧美日韩中文在线观看 | 狠狠干婷婷色 | 成人资源在线播放 | 久久精品视频免费 | www欧美xxxx| 婷婷黄色片 | 欧美电影黄色 | 中文字幕亚洲高清 | 国产日韩欧美在线播放 | 久久久免费精品国产一区二区 | 日韩免费在线观看 | 午夜视频色| 成人在线免费看 | 久久综合福利 | 超碰精品在线观看 | 国产美腿白丝袜足在线av | 99色99| 中文字幕观看在线 | 色五月色开心色婷婷色丁香 | www日韩在线 | 中文在线字幕免费观 | 六月久久婷婷 | 国产亚洲精品久久久久久无几年桃 | 日韩精品久久久久久久电影99爱 | 99在线视频观看 | 免费观看高清 | 91九色视频观看 | 婷婷丁香在线视频 | 中文字幕亚洲高清 | 在线免费国产视频 | 日韩av免费网站 | 欧美激情精品 | 久久综合九色综合97婷婷女人 | 日韩美女免费线视频 | av天天色 | 91视频中文字幕 | 久久一级片 | 成人久久久电影 | 亚洲精品永久免费视频 | 亚洲女欲精品久久久久久久18 | 成人h电影| 能在线看的av | 成年人网站免费观看 | 97视频免费播放 | 精品亚洲免费 | 在线观看中文字幕 | 国产日韩欧美在线 | 国产中文在线播放 | 草久热| 久草干 | 激情网站五月天 | 四虎成人精品永久免费av九九 | 黄色精品一区 | 日韩欧美在线影院 | 日本一区二区三区视频在线播放 | 色综合国产 | 97精品国产91久久久久久 | 亚洲 欧美 国产 va在线影院 | 久草在线免费看视频 | 深夜福利视频在线观看 | 91看国产| 色香天天 | 久久五月天综合 | 激情图片qvod| 久久久一本精品99久久精品66 | 久久精彩视频 | 欧美 国产 视频 | 欧美日韩免费网站 | 日日日日 | 日日躁夜夜躁xxxxaaaa | av观看网站 | 久久伊人八月婷婷综合激情 | 婷婷综合久久 | 在线免费观看亚洲视频 | 精品久久久久久国产91 | 国产在线观看免 | 操操色| 果冻av在线 | 亚洲经典视频在线观看 | 久久婷婷视频 | 一级黄色片网站 | 久久天天躁狠狠躁亚洲综合公司 | 性日韩欧美在线视频 | 99热最新在线 | 久久精品91视频 | 91精品国产99久久久久久久 | 国产一区二区不卡视频 | 成人av免费播放 | 久久久精品福利视频 | 亚洲免费精品视频 | 97精品国产97久久久久久春色 | 五月婷婷国产 | 国产精品9999久久久久仙踪林 | 97超碰在线久草超碰在线观看 | 亚洲免费在线观看视频 | 国产一区二区影院 | 2018精品视频| www日韩在线| 色网址99| 国产麻豆精品久久 | 免费视频国产 | 欧洲精品亚洲精品 | 香蕉视频在线观看免费 | 麻豆国产露脸在线观看 | .国产精品成人自产拍在线观看6 | 久久久久9999亚洲精品 | 久久久久国产一区二区三区四区 | 欧美日韩视频在线观看免费 | 国产日韩av在线 | www欧美色 | 欧美日韩一区二区在线 | 国产黄大片 | 成人欧美在线 | 亚洲欧美日韩一区二区三区在线观看 | 黄色毛片在线 | 国产成人精品综合久久久久99 | 亚洲爽爽网 | 中文av在线免费观看 | 成人免费视频网站在线观看 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 亚洲国产中文字幕在线视频综合 | 99久久99久国产黄毛片 | 在线观看免费av片 | 波多野结衣综合网 | 97视频网址 | 国产九九九九九 | 国产一区不卡在线 | www免费网站在线观看 | 亚洲午夜电影网 | 成人h视频| 成年人免费看片 | 亚洲精品国偷自产在线99热 | 中文字幕免 | 亚洲综合视频网 | 久久99精品久久久久久三级 | 美女视频黄是免费的 | 久久国色夜色精品国产 | 日韩伦理片一区二区三区 | 久久精品一区八戒影视 | 综合久久久久久久久 | 精品国产乱码久久久久 | 亚洲成人av在线播放 | 免费av看片| 美女福利视频一区二区 | 在线91播放 | 中文字幕国产精品 | 人人插人人费 | 亚洲精品久久久久久久蜜桃 | 欧美午夜一区二区福利视频 | 亚洲第一区在线观看 | 欧美色综合天天久久综合精品 | 久久国产午夜精品理论片最新版本 | 91桃色在线免费观看 | 六月丁香综合网 | 久草电影在线观看 | 成人国产精品免费观看 | 国产成人av福利 | 国产成人一区二区三区久久精品 | 美女网站一区 | 午夜av免费 | 久久免费观看视频 | 国产成人一区二区三区在线观看 | av在线网站大全 | av在线h | 三级黄色理论片 | 久久久精品国产免费观看同学 | 久久久久国产成人免费精品免费 | 久久在线精品视频 | 91麻豆精品国产午夜天堂 | 国产精品第72页 | 日韩免费电影在线观看 | 久久精品99国产精品 | 国产一区在线视频观看 | 久久久久久福利 | 欧美精品三级在线观看 | 免费av在线播放 | 91视频久久久久 | 国产91全国探花系列在线播放 | 91精品免费看 | 五月情婷婷 | 欧美一级片免费在线观看 | 久草视频观看 | 亚洲一级久久 | 亚洲在线国产 | 精品一区二区免费视频 | 超碰在线免费97 | www亚洲视频 | 久久 在线 | 欧美性爽爽 | 最近中文字幕第一页 | 色偷偷av男人天堂 | 天天操天天操天天操天天操天天操 | 欧美激情综合网 | 欧美日韩视频免费 | 亚洲精品国产综合久久 | 黄色www | 美女免费视频观看网站 | 欧美精品做受xxx性少妇 | 国产精品免费观看久久 | 国产一区二区三区黄 | 亚洲成人av片在线观看 | 亚洲精品久久久久久中文传媒 | 全久久久久久久久久久电影 | 天天看天天干天天操 | 99爱爱| 久久99国产精品二区护士 | 又色又爽又黄高潮的免费视频 | 精品久久网站 | 色综合中文综合网 | 午夜国产福利视频 | 成人午夜电影网 | 四虎国产 | 日韩av影视在线观看 | 日韩欧美高清在线观看 | 日韩成人黄色av | 国产在线欧美日韩 | 中文字幕在线一区观看 | 亚洲免费在线播放视频 | 成人免费网站在线观看 | 国产精品欧美日韩在线观看 | 欧美性生活小视频 | 97精品久久人人爽人人爽 | 国产精品视频免费 | av在线进入 | 亚洲国产精品成人精品 | a天堂最新版中文在线地址 久久99久久精品国产 | 日韩欧美xxx | 国产一区二区视频在线 | 国产手机在线播放 | 成人动漫一区二区 | 国产精品久久精品国产 | 一本一本久久a久久精品牛牛影视 | 精品免费久久久久久 | 麻豆传媒在线免费看 | 97视频精品 | 在线观看一二三区 | av线上看 | 三级黄色片在线观看 | 日韩在线视频看看 | 国产视频一区二区在线播放 | 毛片无卡免费无播放器 | 91在线播放国产 | 亚洲视频 一区 | 成人av高清在线 | 国产不卡免费av | 国产一区 在线播放 | 天天干,天天射,天天操,天天摸 | 亚洲欧美色婷婷 | 国产免费黄视频在线观看 | 欧美色道| 亚洲成人免费 | 亚洲1区在线| 亚洲精区二区三区四区麻豆 | 精品一区二区三区香蕉蜜桃 | 欧美日韩视频在线播放 | 日韩av一区二区三区 | 欧美一级日韩三级 | 天天射,天天干 | 国内99视频| 欧美特一级 | 亚洲,播放 | 五月婷婷国产 | 欧美精品在线一区 | 欧美一级视频免费 | 中文字幕免费国产精品 | 日韩免费网址 | 97超视频在线观看 | 激情视频在线观看网址 | 二区三区在线视频 | 久草视频免费播放 | 91黄色在线观看 | 13日本xxxxxⅹxxx20| 六月丁香在线观看 | 久久av一区二区三区亚洲 | 91精品视频免费看 | 国产一级免费视频 | 亚洲一区欧美激情 | 欧美男同视频网站 | 国产精国产精品 | 久久国产精品二国产精品中国洋人 | 亚洲一区欧美激情 | 国产不卡在线看 | 日韩一区二区在线免费观看 | 亚洲黄色免费在线 | 天天天天色射综合 | 99日精品 | 91麻豆精品一区二区三区 | 久久久影院一区二区三区 | 午夜123 | 国产三级精品三级在线观看 | 二区三区在线观看 | 91精品国产麻豆国产自产影视 | 欧美成人h版| av播放在线| 亚洲影视九九影院在线观看 | 人人玩人人添人人 | 国产精品久久久久久久久久久杏吧 | 久久久久女人精品毛片 | 国产精品一二 | 精品国产视频一区 | 国产黄在线播放 | 97涩涩视频 | 婷婷在线免费观看 | 黄色大片免费网站 | 久久不射电影院 | 综合激情伊人 | 亚洲美女视频在线观看 | 日韩中文在线字幕 | 国产精品国产三级国产aⅴ9色 | 婷婷色网站 | 豆豆色资源网xfplay | 999热视频 | 久久精品免费看 | 国产热re99久久6国产精品 | 永久黄网站色视频免费观看w | 97在线观看免费观看高清 | 日本一区二区三区视频在线播放 | 日韩精品久久久 | 国产精品一区一区三区 | 欧美精品一区二区在线播放 | 久草在线免费新视频 | 国产午夜精品一区二区三区嫩草 | 日韩视频一区二区三区 | 日韩高清一区在线 | 婷婷av网站| 一区三区在线欧 | 国产成人不卡 | 99re在线视频观看 | 日韩动漫免费观看高清完整版在线观看 | 91精品久久久久久久99蜜桃 | 在线成人看片 | 久热这里有精品 | 久久久免费在线观看 | 国产精品剧情 | 国产视频丨精品|在线观看 国产精品久久久久久久久久久久午夜 | 国产美女在线精品免费观看 | 亚av在线| 人人爱天天操 | 国产精品h在线观看 | 日韩一区二区免费播放 | 亚洲综合色视频在线观看 | 狠狠操天天射 | 国产精品男女啪啪 | 色偷偷男人的天堂av | 国产成人在线观看免费 | 日韩精品欧美视频 | 欧美日韩亚洲在线观看 | 婷婷电影在线观看 | 久久乐九色婷婷综合色狠狠182 | 成人一区影院 | 国产一区在线观看视频 | 色的网站在线观看 | 在线 影视 一区 | 久久人91精品久久久久久不卡 | 97人人模人人爽人人喊网 | 日本护士三级少妇三级999 | 国产精久久久 | 成年人免费看片 | 91免费高清在线观看 | 激情久久伊人 | 久草免费电影 | 久久久久久久久久影院 | 91人人在线 | 天天色天天操天天爽 | 91激情视频在线观看 | 国产精品一区二区三区视频免费 | 久久99久久99精品免视看婷婷 | 亚洲成av人片一区二区梦乃 | 国产精品久久久久一区二区三区 | 超碰在线中文字幕 | 国产三级香港三韩国三级 | 国产91亚洲 | 国产精品久久久久久久久久白浆 | 日本韩国精品一区二区在线观看 | 亚洲精品动漫成人3d无尽在线 | 亚洲国产成人久久 | 91成人短视频在线观看 | 亚洲欧美偷拍另类 | 中文字幕在线观看的网站 | 中文字幕av在线免费 | 久久这里只有精品视频首页 | 亚洲在线a | 中文字幕永久在线 | 欧美人人 | adc在线观看 | 久久成人在线视频 | 亚洲精品乱码久久 | 国产久视频 | 狠狠天天| 亚洲 综合 国产 精品 | 国产精品123 | 日韩视频区 | 美女视频国产 | 国产一区二区三区四区大秀 | 国产精品综合av一区二区国产馆 | 最近2019好看的中文字幕免费 | 亚洲精品免费在线播放 | 丁香在线观看完整电影视频 | 在线а√天堂中文官网 | 天天摸日日操 | 欧亚日韩精品一区二区在线 | 91桃色国产在线播放 | 夜夜夜 | 天堂资源在线观看视频 | 亚洲精品理论片 | 久99久中文字幕在线 | 欧美另类色图 | 色wwwww| www.精选视频.com | 青青草国产成人99久久 | 日日干夜夜爱 | 婷婷色五 | 六月丁香激情网 | 免费高清在线视频一区· | 成人av一区二区在线观看 | 日韩黄色大片在线观看 | 免费成人黄色 | 在线观看的av | 91在线视频免费播放 | 夜夜摸夜夜爽 | 精品国产黄色片 | 天天天干天天射天天天操 | 美女黄频网站 | 九九热精品视频在线播放 | 亚洲成人资源 | 欧美一区成人 | 欧美热久久| 蜜桃传媒一区二区 | 国产免费嫩草影院 | 日日干 天天干 | 精品国产乱码久久久久久三级人 | 国产黄| 亚洲精品国精品久久99热一 | 中文字幕精品一区二区三区电影 | 日韩在线大片 | 欧洲av在线| 国产一区二区不卡在线 | 国产精品6 | 欧美91精品久久久久国产性生爱 | 97操碰| 不卡的av片 | 亚洲专区在线播放 | 亚洲精品国产拍在线 | 91爱爱免费观看 | 日韩欧美视频一区 | 视频国产在线观看18 | 久久久免费观看完整版 | 国产精品综合在线观看 | 色网站在线免费观看 | 免费人成网 | 国产精品久久久影视 | 国产美女主播精品一区二区三区 | 国产一级二级三级在线观看 | 日韩在线播放av | 中文资源在线观看 | 国产美女网站视频 | 免费一级特黄录像 | 青草视频网 | 久久尤物电影视频在线观看 | 456成人精品影院 | 久草在线资源网 | 国产在线视频资源 | 五月天中文在线 | 午夜国产一区二区三区四区 | 日韩一区二区久久 | 婷婷丁香花五月天 | 国内精品免费 | 久久久久97国产 | 九九有精品 | 亚洲视频免费视频 | 97精品国产97久久久久久春色 | 97视频免费观看 | 永久免费精品视频 | 91天堂在线观看 | 激情在线五月天 | 国产97免费 | 深夜免费网站 | av色影院| 久久综合九色综合久99 | 日日夜夜天天射 | 国产精品一区二区av日韩在线 | 激情av五月婷婷 | 一区二区三区在线观看 | 四虎www. | 免费a视频 | 在线视频 国产 日韩 | av不卡中文字幕 | 日韩成人黄色 | 国产精品日韩欧美 | 成人蜜桃 | 黄色av成人在线 | av网址aaa| 91少妇精拍在线播放 | 欧美精品在线观看一区 | 99综合影院在线 | 久草视频在线免费 | 69xx视频| 国产精品久久久久影视 | 国产精品永久免费视频 | 日韩欧美精品一区 | 久久婷五月 | 婷婷国产v亚洲v欧美久久 | 在线欧美国产 | 亚洲色图27p | 热久久免费视频精品 | 91精品国产自产91精品 | 九九热在线精品视频 | www色网站| 免费视频一区二区 |