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

歡迎訪問 生活随笔!

生活随笔

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

asp.net

两种高性能I/O设计模式(Reactor/Proactor)的比较

發布時間:2025/3/21 asp.net 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 两种高性能I/O设计模式(Reactor/Proactor)的比较 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

綜述

這篇文章探討并比較兩種用于TCP服務器的高性能設計模式。 除了介紹現有的解決方案,還提出了一種更具伸縮性,只需要維護一份代碼并且跨平臺的解決方案(含代碼示例),以及其在不同平臺上的微調。 此文還比較了java、c#、c++對各自現有以及提到的解決方案的實現性能。

系統I/O 可分為阻塞型, 非阻塞同步型以及非阻塞異步型[1、2]。 阻塞型I/O意味著控制權只到調用操作結束了才會回到調用者手里。 結果調用者被阻塞了, 這段時間了做不了任何其它事情。 更郁悶的是,在等待IO結果的時間里,調用者所在線程此時無法騰出手來去響應其它的請求,這真是太浪費資源了。拿read()操作來說吧, 調用此函數的代碼會一直僵在此處直至它所讀的socket緩存中有數據到來。

相比之下,非阻塞同步是會立即返回控制權給調用者的。調用者不需要等等,它從調用的函數獲取兩種結果:要么此次調用成功進行了;要么系統返回錯誤標識告訴調用者當前資源不可用,你再等等或者再試度看吧。比如read()操作, 如果當前socket無數據可讀,則立即返回EWOULBLOCK/EAGAIN,告訴調用read()者”數據還沒準備好,你稍后再試”。

在非阻塞異步調用中,稍有不同。調用函數在立即返回時,還告訴調用者,這次請求已經開始了。系統會使用另外的資源或者線程來完成這次調用操作,并在完成的時候知會調用者(比如通過回調函數)。拿Windows的ReadFile()或者POSIX的aio_read()來說,調用它之后,函數立即返回,操作系統在后臺同時開始讀操作。

在以上三種IO形式中,非阻塞異步是性能最高、伸縮性最好的。

這篇文章探討不同的I/O利用機制并提供一種跨平臺的設計模式(解決方案)。 希望此文可以給于TCP高性能服務器開發者一些幫助,選擇最佳的設計方案。下面我們會比較 Java、C#、 C++各自對探討方案的實現以及性能。 我們在文章的后面就不再提及阻塞式的方案了,因為阻塞式I/O實在是缺少可伸縮性,性能也達不到高性能服務器的要求。

兩種IO多路復用方案:Reactor and Proactor

一般情況下,I/O 復用機制需要事件分享器(event demultiplexor [1、3])。 事件分享器的作用,即將那些讀寫事件源分發給各讀寫事件的處理者,就像送快遞的在樓下喊: 誰的什么東西送了, 快來拿吧。開發人員在開始的時候需要在分享器那里注冊感興趣的事件,并提供相應的處理者(event handlers),或者是回調函數; 事件分享器在適當的時候會將請求的事件分發給這些handler或者回調函數。

涉及到事件分享器的兩種模式稱為:Reactor and Proactor [1]。 Reactor模式是基于同步I/O的,而Proactor模式是和異步I/O相關的。 在Reactor模式中,事件分離者等待某個事件或者可應用或個操作的狀態發生(比如文件描述符可讀寫,或者是socket可讀寫),事件分離者就把這個事件傳給事先注冊的事件處理函數或者回調函數,由后者來做實際的讀寫操作。

而在Proactor模式中,事件處理者(或者代由事件分離者發起)直接發起一個異步讀寫操作(相當于請求),而實際的工作是由操作系統來完成的。發起時,需要提供的參數包括用于存放讀到數據的緩存區,讀的數據大小,或者用于存放外發數據的緩存區,以及這個請求完后的回調函數等信息。事件分離者得知了這個請求,它默默等待這個請求的完成,然后轉發完成事件給相應的事件處理者或者回調。舉例來說,在Windows上事件處理者投遞了一個異步IO操作(稱有overlapped的技術),事件分離者等IOCompletion事件完成[1]。 這種異步模式的典型實現是基于操作系統底層異步API的,所以我們可稱之為“系統級別”的或者“真正意義上”的異步,因為具體的讀寫是由操作系統代勞的。

舉另外個例子來更好地理解Reactor與Proactor兩種模式的區別。這里我們只關注read操作,因為write操作也是差不多的。下面是Reactor的做法:

  • 某個事件處理者宣稱它對某個socket上的讀事件很感興趣;
  • 事件分離者等著這個事件的發生;
  • 當事件發生了,事件分離器被喚醒,這負責通知先前那個事件處理者;
  • 事件處理者收到消息,于是去那個socket上讀數據了。 如果需要,它再次宣稱對這個socket上的讀事件感興趣,一直重復上面的步驟;

下面再來看看真正意義的異步模式Proactor是如何做的:

  • 事件處理者直接投遞發一個寫操作(當然,操作系統必須支持這個異步操作)。 這個時候,事件處理者根本不關心讀事件,它只管發這么個請求,它魂牽夢縈的是這個寫操作的完成事件。這個處理者很拽,發個命令就不管具體的事情了,只等著別人(系統)幫他搞定的時候給他回個話。
  • 事件分離者等著這個讀事件的完成(比較下與Reactor的不同);
  • 當事件分離者默默等待完成事情到來的同時,操作系統已經在一邊開始干活了,它從目標讀取數據,放入用戶提供的緩存區中,最后通知事件分離者,這個事情我搞完了;
  • 事件分享者通知之前的事件處理者: 你吩咐的事情搞定了;
  • 事件處理者這時會發現想要讀的數據已經乖乖地放在他提供的緩存區中,想怎么處理都行了。如果有需要,事件處理者還像之前一樣發起另外一個寫操作,和上面的幾個步驟一樣。

現行做法

開源C++開發框架 ACE[1、3](Douglas Schmidt, et al.開發) 提供了大量平臺獨立的底層并發支持類(線程、互斥量等)。 同時在更高一層它也提供了獨立的幾組C++類,用于實現Reactor及Proactor模式。 盡管它們都是平臺獨立的單元,但他們都提供了不同的接口。

ACE Proactor在MS-Windows上無論是性能還在健壯性都更勝一籌,這主要是由于Windows提供了一系列高效的底層異步API。 [4、5]。

(這段可能過時了點吧) 不幸的是,并不是所有操作系統都為底層異步提供健壯的支持。舉例來說, 許多Unix系統就有麻煩。因此, ACE Reactor可能是Unix系統上更合適的解決方案。 正因為系統底層的支持力度不一,為了在各系統上有更好的性能,開發者不得不維護獨立的好幾份代碼: 為Windows準備的ACE Proactor以及為Unix系列提供的ACE Reactor。

就像我們提到過的,真正的異步模式需要操作系統級別的支持。由于事件處理者及操作系統交互的差異,為Reactor和Proactor設計一種通用統一的外部接口是非常困難的。這也是設計通行開發框架的難點所在。

更好的解決方案

在文章這一段時,我們將嘗試提供一種融合了Proactor和Reactor兩種模式的解決方案。 為了演示這個方案,我們將Reactor稍做調整,模擬成異步的Proactor模型(主要是在事件分離器里完成本該事件處理者做的實際讀寫工作,我們稱這種方法為”模擬異步“)。 下面的示例可以看看read操作是如何完成的:

  • 事件處理者宣稱對讀事件感興趣,并提供了用于存儲結果的緩存區、讀數據長度等參數;
  • 調試者等待(比如通過select());
  • 當有事件到來(即可讀),調試者被喚醒, 調試者去執行非阻塞的讀操作(前面事件處理者已經給了足夠的信息了)。讀完后,它去通知事件處理者。
  • 事件處理者這時被知會讀操作已完成,它擁有完整的原先想要獲取的數據了。

我們看到,通過為分離者(也就上面的調試者)添加一些功能,可以讓Reactor模式轉換為Proactor模式。所有這些被執行的操作,其實是和Reactor模型應用時完全一致的。我們只是把工作打散分配給不同的角色去完成而已。這樣并不會有額外的開銷,也不會有性能上的的損失,我們可以再仔細看看下面的兩個過程,他們實際上完成了一樣的事情:

標準的經典的 Reactor模式:

  • 步驟 1) 等待事件 (Reactor 的工作)
  • 步驟 2) 發”已經可讀”事件發給事先注冊的事件處理者或者回調 ( Reactor 要做的)
  • 步驟 3) 讀數據 (用戶代碼要做的)
  • 步驟 4) 處理數據 (用戶代碼要做的)

模擬的Proactor模式:

  • 步驟 1) 等待事件 (Proactor 的工作)
  • 步驟 2) 讀數據(看,這里變成成了讓 Proactor 做這個事情)
  • 步驟 3) 把數據已經準備好的消息給用戶處理函數,即事件處理者(Proactor 要做的)
  • 步驟 4) 處理數據 (用戶代碼要做的)

在沒有底層異步I/O API支持的操作系統,這種方法可以幫我們隱藏掉socket接口的差異(無論是性能還是其它), 提供一個完全可用的統一“異步接口”。這樣我們就可以開發真正平臺獨立的通用接口了。

TProactor

我們提出的TProactor方案已經由TerabitP/L [6]公司實現了。 它有兩種實現: C++的和Java的。C++版本使用了ACE平臺獨立的底層元件,最終在所有操作系統上提供了統一的異步接口。

TProactor中最重要的組件要數Engine和WaitStrategy了。 Engine用于維護異步操作的生命周期;而WaitStrategy用于管理并發策略。 WaitStrategy和Engine一般是成對出現的, 兩者間提供了良好的匹配接口。

Engines和等待策略被設計成高度可組合的(完整的實現列表請參照附錄1)。TProactor是高度可配置的方案,通過使用異步內核API和同步Unix API(select(),poll(), /dev/poll (Solaris 5.8+), port_get (Solaris 5.10),RealTime (RT) signals (Linux 2.4+), epoll (Linux 2.6), k-queue (FreeBSD) ),它內部實現了三種引擎(POSIX AIO, SUN AIO and Emulated AIO)并隱藏了六類等待策略。TProactor實現了和標準的 ACE Proactor一樣的接口。這樣一來,為不同平臺提供通用統一的只有一份代碼的跨平臺解決方案成為可能。

Engines和WaitStrategies可以像樂高積木一樣自由地組合,開發者可以在運行時通過配置參數來選擇合適的內部機制(引擎和等待策略)??梢愿鶕枨笤O定配置,比如連接數,系統伸縮性,以及運行的操作系統等。如果系統支持相應的異步底層API,開發人員可以選擇真正的異步策略,否則用戶也可以選擇使用模擬出來的異步模式。所有這一切策略上的實現細節都不太需要關注,我們看到的是一個可用的異步模型。

舉例來說,對于運行在Sun Solaris上的HTTP服務器,如果需要支持大量的連接數,/dev/poll或者port_get()之類的引擎是比較合適的選擇;如果需要高吞吐量,那使用基本select()的引擎會更好。由于不同選擇策略內在算法的問題,像這樣的彈性選擇是標準ACE Reactor/Proactor模式所無法提供的(見附錄2)。

在性能方面,我們的測試顯示,模擬異步模式并未造成任何開銷,沒有變慢,反倒是性能有所提升。根據我們的測試結果,TProactor相較標簽的ACE Reactor在Unix/Linux系統上有大約10-35%性能提升,而在Windows上差不多(測試了吞吐量及響應時間)。

性能比較 (JAVA / C++ / C#).

除了C++,我們也在Java中實現了TProactor。 JDK1.4中, Java僅提供了同步方法, 像C中的select() [7、8]。 Java TProactor基于Java的非阻塞功能(java.nio包),類似于C++的TProactor使用了select()引擎。

圖1、2顯示了以 bits/sec為單位的傳輸速度以及相應的連接數。這些圖比較了以下三種方式實現的echo服務器:標準ACE Reactor實現(基于RedHat Linux9.0)、TProactor C++/Java實現(Microsoft Windows平臺及RedHat v9.0), 以及C#實現。測試的時候,三種服務器使用相同的客戶端瘋狂地連接,不間斷地發送固定大小的數據包。

這幾組測試是在相同的硬件上做的,在不同硬件上做的相對結果對比也是類似。

圖 1. Windows XP/P4 2.6GHz HyperThreading/512 MB RAM. 圖 2. Linux RedHat 2.4.20-smp/P4 2.6GHz HyperThreading/512 MB RAM.

用戶代碼示例

下面是TProactor Java實現的echo服務器代碼框架。總的來說,開發者只需要實現兩個接口:一是OpRead,提供存放讀結果的緩存;二是OpWrite,提供存儲待寫數據的緩存區。同時,開發者需要通過回調onReadComplated()和onWriteCompleted()實現協議相關的業務代碼。這些回調會在合適的時候被調用。

Java class EchoServerProtocol implements AsynchHandler {AsynchChannel achannel = null;EchoServerProtocol( Demultiplexor m, SelectableChannel channel ) throws Exception{this.achannel = new AsynchChannel( m, this, channel );}public void start() throws Exception{// called after constructionSystem.out.println( Thread.currentThread().getName() + ": EchoServer protocol started" );achannel.read( buffer);}public void onReadCompleted( OpRead opRead ) throws Exception{if ( opRead.getError() != null ){// handle error, do clean-up if neededSystem.out.println( "EchoServer::readCompleted: " + opRead.getError().toString());achannel.close();return;}if ( opRead.getBytesCompleted () <= 0){System.out.println("EchoServer::readCompleted: Peer closed " + opRead.getBytesCompleted();achannel.close();return;}ByteBuffer buffer = opRead.getBuffer();achannel.write(buffer);}public void onWriteCompleted(OpWrite opWrite) throws Exception{// logically similar to onReadCompleted...} }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 classEchoServerProtocol implements AsynchHandler { ??AsynchChannel achannel= null; ??EchoServerProtocol(Demultiplexor m,??SelectableChannelchannel ) ??throwsException ??{ ????this.achannel= newAsynchChannel(m,this,channel ); ??} ??publicvoid start()throws Exception ??{ ????// called after construction ????System.out.println(Thread.currentThread().getName()+ ": EchoServer protocol started"); ????achannel.read(buffer); ??} ??publicvoid onReadCompleted(OpRead opRead) throwsException ??{ ????if( opRead.getError()!= null) ????{ ??????// handle error, do clean-up if needed ??????System.out.println("EchoServer::readCompleted: "+ ??????opRead.getError().toString()); ??????achannel.close(); ??????return; ????} ????if( opRead.getBytesCompleted()<= 0) ????{ ??????System.out.println("EchoServer::readCompleted: Peer closed " ?? +opRead.getBytesCompleted(); ??????achannel.close(); ??????return; ????} ????ByteBufferbuffer =opRead.getBuffer(); ????achannel.write(buffer); ??} ??publicvoid onWriteCompleted(OpWriteopWrite) ??throwsException ??{ ????// logically similar to onReadCompleted ????... ??} }

結束語

TProactor為多個平臺提供了一個通用、彈性、可配置的高性能通訊組件,所有那些在附錄2中提到的問題都被很好地隱藏在內部實現中了。

從上面的圖中我們可以看出C++仍舊是編寫高性能服務器最佳選擇,雖然Java已緊隨其后。然而因為Java本身實現上的問題,其在Windows上表現不佳(這已經應該成為歷史了吧)。

需要注意的是,以上針對Java的測試,都是以裸數據的形式測試的,未涉及到數據的處理(影響性能)。

縱觀AIO在Linux上的快速發展[9], 我們可以預計Linux內核API將會提供大量更加強健的異步API, 如此一來以后基于此而實現的新的Engine/等待策略將能輕松地解決能用性方面的問題,并且這也能讓標準ACE Proactor接口受益。

附錄 I

TProactor中實現的Engines 和 等待策略

引擎類型等待策略操作系統
POSIX_AIO (true async)
aio_read()/aio_write()
aio_suspend()
Waiting for RT signal
Callback function
POSIX complained UNIX (not robust)
POSIX (not robust)
SGI IRIX, LINUX (not robust)
SUN_AIO (true async)
aio_read()/aio_write()
aio_wait()SUN (not robust)
Emulated Async
Non-blocking read()/write()
select()
poll()
/dev/poll
Linux RT signals
Kqueue
generic POSIX
Mostly all POSIX implementations
SUN
Linux
FreeBSD

附錄 II

所有同步等待策略可劃分為兩組:

  • edge-triggered (e.g. Linux實時信號) – signal readiness only when socket became ready (changes state);
  • level-triggered (e.g. select(), poll(), /dev/poll) – readiness at any time.

讓我們看看這兩組的一些普遍的邏輯問題:

  • edge-triggered group: after executing I/O operation, the demultiplexing loop can lose the state of socket readiness. Example: the “read” handler did not read whole chunk of data, so the socket remains still ready for read. But the demultiplexor loop will not receive next notification.
  • level-triggered group: when demultiplexor loop detects readiness, it starts the write/read user defined handler. But before the start, it should remove socket descriptior from theset of monitored descriptors. Otherwise, the same event can be dispatched twice.
  • Obviously, solving these problems adds extra complexities to development. All these problems were resolved internally within TProactor and the developer should not worry about those details, while in the synch approach one needs to apply extra effort to resolve them.

資源

[1] Douglas C. Schmidt, Stephen D. Huston “C++ Network Programming.” 2002, Addison-Wesley ISBN 0-201-60464-7

[2] W. Richard Stevens “UNIX Network Programming” vol. 1 and 2, 1999, Prentice Hill, ISBN 0-13- 490012-X

[3] Douglas C. Schmidt, Michael Stal, Hans Rohnert, Frank Buschmann “Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects, Volume 2” Wiley & Sons, NY 2000

[4] INFO: Socket Overlapped I/O Versus Blocking/Non-blocking Mode. Q181611. Microsoft Knowledge Base Articles.

[5] Microsoft MSDN. I/O Completion Ports.
http://msdn.microsoft.com/library/default.asp?url=/library/en- us/fileio/fs/i_o_completion_ports.asp

[6] TProactor (ACE compatible Proactor).
www.terabit.com.au

[7] JavaDoc java.nio.channels
http://java.sun.com/j2se/1.4.2/docs/api/java/nio/channels/package-summary.html

[8] JavaDoc Java.nio.channels.spi Class SelectorProvider
http://java.sun.com/j2se/1.4.2/docs/api/java/nio/channels/spi/SelectorProvider.html

[9] Linux AIO development
http://lse.sourceforge.net/io/aio.html, and
http://archive.linuxsymposium.org/ols2003/Proceedings/All-Reprints/Reprint-Pulavarty-OLS2003.pdf

更多

Ian Barile “I/O Multiplexing & Scalable Socket Servers”, 2004 February, DDJ

Further reading on event handling
– http://www.cs.wustl.edu/~schmidt/ACE-papers.html

The Adaptive Communication Environment
http://www.cs.wustl.edu/~schmidt/ACE.html

Terabit Solutions
http://terabit.com.au/solutions.php

關于作者

Alex Libman has been programming for 15 years. During the past 5 years his main area of interest is pattern-oriented multiplatform networked programming using C++ and Java. He is big fan and contributor of ACE.

Vlad Gilbourd works as a computer consultant, but wishes to spend more time listening jazz :) As a hobby,he started and runs?www.corporatenews.com.au?website.

總結

以上是生活随笔為你收集整理的两种高性能I/O设计模式(Reactor/Proactor)的比较的全部內容,希望文章能夠幫你解決所遇到的問題。

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

天天插天天 | 久久精品79国产精品 | 久久国产精品99久久人人澡 | 青青久草在线视频 | av免费看在线 | 国产精品久久久久久一区二区三区 | 日本女人的性生活视频 | 热热热热热色 | 欧美,日韩| 国产精品手机在线 | 国产精品久久久久久久久久99 | 亚洲日本精品 | 亚洲精品乱码久久久久久久久久 | 天天操夜夜爱 | 欧美成人亚洲 | 国产免费又爽又刺激在线观看 | 麻豆精品视频 | 99日精品 | 精品99999 | 亚洲国产一区av | 国产精品成人一区二区三区吃奶 | 国产精品一区二区久久精品爱微奶 | 黄色免费网站大全 | 日韩素人在线观看 | 日韩免费电影一区二区三区 | 久草在线网址 | 色资源二区在线视频 | 日日干干夜夜 | 十八岁以下禁止观看的1000个网站 | av免费在线免费观看 | 欧美在线视频不卡 | 国产日韩在线看 | av在线播放亚洲 | 午夜av剧场 | 在线电影 一区 | 国产一卡二卡四卡国 | 欧美国产日韩久久 | 伊人手机在线 | 激情五月综合 | 久热爱 | 久久国色夜色精品国产 | 欧美日在线观看 | 中文字幕在线视频一区二区三区 | av电影不卡 | 在线成人免费电影 | 欧美一级在线观看视频 | 欧美精品久久久久久久久久 | 色噜噜狠狠色综合中国 | 91在线精品观看 | 精产嫩模国品一二三区 | 国色天香永久免费 | 亚洲无吗天堂 | 五月激情片 | 成人免费观看视频大全 | 久久综合桃花 | 天天射天天干天天爽 | 五月激情六月丁香 | 国产在线不卡视频 | 国产精品久久久久久久av大片 | 欧美乱大交 | 国产在线久久久 | 久久涩视频 | 国产一区二区三区高清播放 | 亚洲妇女av | 久草干| 成人在线视频你懂的 | 黄网站污 | 97精品国产97久久久久久 | 国产精品99久久久久久武松影视 | 国产99久久精品一区二区永久免费 | 五月婷婷在线播放 | 国产高清视频免费最新在线 | 精品a在线 | 久久这里只有精品23 | 亚洲精品免费观看视频 | 丁香六月久久综合狠狠色 | 丁香花中文字幕 | 中文字幕免费观看全部电影 | 91香蕉视频 mp4 | 黄色官网在线观看 | 狠狠色综合欧美激情 | 色婷婷一| 日日干激情五月 | 国产玖玖精品视频 | 蜜臀av.com| 亚洲欧美国产精品va在线观看 | 91亚洲在线观看 | 亚洲激精日韩激精欧美精品 | 免费a级观看 | 免费视频二区 | 色综合色综合久久综合频道88 | 久久久免费国产 | 精品中文字幕在线观看 | 午夜av一区二区三区 | 亚洲精品一区二区三区四区高清 | 五月天久久 | 美女免费视频一区二区 | 免费日韩 | 亚洲精品视频偷拍 | 亚洲午夜精品久久久久久久久 | 免费看的视频 | av理论电影| 婷婷播播网 | 婷婷丁香激情综合 | 91福利在线导航 | 国产第一页福利影院 | 国内免费久久久久久久久久久 | 国产黄网站在线观看 | 性色av免费在线观看 | 久久午夜电影院 | 在线看国产日韩 | 色综合a| 久久国产精品小视频 | 亚洲在线视频观看 | www九九热| 91精品1区 | 日韩av电影免费在线观看 | 久久久久亚洲最大xxxx | 亚洲精品美女久久久久 | 久久久久久久久久网站 | 国产精品午夜久久久久久99热 | 久热av | 久久精品99久久久久久2456 | 国产在线精品观看 | 91久久一区二区 | 国产香蕉av | 日韩免费视频网站 | 成人高清av在线 | 在线日韩亚洲 | 亚洲午夜精品久久久久久久久久久久 | 日日天天狠狠 | 亚洲天堂在线观看完整版 | 91视频一8mav | 在线观看精品一区 | 九九久久久 | 精品国产一区二区三区蜜臀 | 久久综合中文色婷婷 | 久久99国产精品视频 | 亚洲最新精品 | 天天操夜夜干 | 亚洲精品网站在线 | 美女网站黄在线观看 | 91麻豆精品国产午夜天堂 | 奇米网444 | 亚洲一级黄色片 | 精品99在线视频 | 欧美成人性网 | 国产二区电影 | 日日草天天干 | 色噜噜狠狠色综合中国 | 国产精品av电影 | 国产精品久久久久久久久久久不卡 | 日本中文字幕在线看 | 国产一级片久久 | 免费av网站在线看 | 亚洲精品欧美视频 | 久久99九九99精品 | 国产亚洲午夜高清国产拍精品 | 啪啪激情网 | 国产精品久久久久久爽爽爽 | 天天干,天天插 | 亚洲精品一区二区三区新线路 | 国精产品满18岁在线 | 2019天天干夜夜操 | av中文天堂 | 国产一级不卡视频 | 在线观看不卡视频 | 国产日韩亚洲 | 九九热1 | 亚洲高清视频在线观看免费 | 国产日韩欧美视频在线观看 | 久久精品国产一区二区三区 | 日韩在线观看你懂得 | 色偷偷88欧美精品久久久 | 久久久久久蜜桃一区二区 | 黄色福利| 国产高清视频在线 | 午夜性色| 久久黄色网 | 一区二区三区免费 | 久久黄色片 | 在线免费高清视频 | 免费看国产一级片 | 国产精品亚洲成人 | 精品免费一区 | 麻豆视频在线免费看 | 国产一区观看 | 91免费网 | 婷婷六月色 | 国产小视频在线播放 | 色婷婷欧美 | 国产视频在线免费观看 | 国产一级片播放 | av亚洲产国偷v产偷v自拍小说 | 96国产在线 | 久久国产精品网站 | 亚洲精品网址在线观看 | 91麻豆看国产在线紧急地址 | 婷婷激情五月 | 超碰99在线 | 狠狠操天天操 | 欧美日韩在线观看一区二区 | 色综合天天综合 | 亚洲国产精品久久久 | 亚洲作爱 | 亚洲国产高清在线观看视频 | 久久久黄色av | 亚洲1区在线 | 亚洲精品99久久久久久 | 热九九精品| www日韩精品 | 国产乱视频 | 亚洲国产理论片 | 99久久夜色精品国产亚洲96 | 九九免费在线观看视频 | 91麻豆国产| 亚洲精品国产精品国自产观看浪潮 | 超碰97网站 | 精品一区中文字幕 | 夜夜夜夜操 | 蜜臀aⅴ国产精品久久久国产 | 香蕉久草| 国产伦精品一区二区三区… | 黄网站色视频 | 欧美一区二区在线免费看 | 国产精选在线观看 | 色国产精品一区在线观看 | 97精品国产97久久久久久春色 | 免费观看午夜视频 | 欧美一二三在线 | 日韩免费不卡视频 | 中文字幕免费在线 | 日韩精品不卡在线观看 | 久久久天堂 | 久草视频在线免费 | 亚洲不卡123 | 久久精品中文字幕 | 欧美性黑人 | 在线观看av不卡 | 91福利视频免费 | 视频二区在线视频 | 免费aa大片| 视频一区二区免费 | 婷婷六月综合亚洲 | 日日摸日日碰 | 久久精品福利 | 日韩在线观看不卡 | 91在线小视频 | 九草视频在线观看 | 久久久精品99 | av免费看在线 | 国产成人a v电影 | 97在线观看视频国产 | 欧美性春潮 | 久久亚洲二区 | 亚洲男男gaygay无套 | japanesexxxhd奶水 国产一区二区在线免费观看 | 国产专区一| a极黄色片 | 亚洲免费在线 | 久久久久久高清 | 日韩精品久久久 | 毛片一二区 | 狠狠地操 | 综合婷婷久久 | 中文字幕免费播放 | 午夜三级在线 | 少妇啪啪av入口 | 国产成人精品综合久久久 | 国内精品福利视频 | 综合网成人 | 18久久久| 日狠狠 | 就要色综合 | 波多野结衣视频一区 | 日韩亚洲欧美中文字幕 | 日韩国产精品一区 | 日日干天天干 | 成人永久在线 | 国产69精品久久99的直播节目 | 中文字字幕在线 | 91最新网址| www黄色com| 91资源在线 | 久久91网 | 精品电影一区 | 最新午夜电影 | 婷婷五月情 | 亚洲天堂网站视频 | 伊人久久精品久久亚洲一区 | 色999五月色| 中文字幕在线看视频国产 | 日韩色中色 | 国产精品九九久久99视频 | 国产在线色 | 91看片在线播放 | 日韩极品在线 | 在线免费日韩 | 国外av在线 | 国产精品一区二区在线看 | 国产精品久久久久久久婷婷 | 国产精品99久久99久久久二8 | 黄色在线免费观看网站 | 伊人婷婷久久 | 在线免费黄色av | 2021国产精品| 天天操天天谢 | av成人免费在线看 | 国产精品一区二区av麻豆 | 日韩免费视频线观看 | 免费日韩 精品中文字幕视频在线 | 狠狠的日日 | 日韩av片免费在线观看 | 国产精品久久久久久久久搜平片 | 人人插人人看 | 国产二区视频在线观看 | 亚洲成a人片在线观看网站口工 | 日韩在线免费不卡 | 小草av在线播放 | 久久久久久久久久久久久久免费看 | av三级av| 精品欧美日韩 | 91精品在线免费 | 成年人黄色大片在线 | 国内丰满少妇猛烈精品播 | 超碰.com| 久久久久在线 | 国产高清在线永久 | 午夜久久福利影院 | 婷婷色六月天 | 欧美成人区 | 色在线亚洲 | 天天色成人网 | 日韩亚洲国产中文字幕 | 亚洲精品777| 在线免费观看涩涩 | 亚洲欧美在线观看视频 | 亚洲精品白浆高清久久久久久 | 久久精品一二三区白丝高潮 | 美腿丝袜一区二区三区 | 久久国产电影院 | 91完整视频| 国产伦精品一区二区三区… | 久操视频在线免费看 | 精品久久精品久久 | 啪啪午夜免费 | 999视频在线播放 | 国产精品一区二区av日韩在线 | 久久久久久久久免费视频 | 成人网中文字幕 | 中文字幕在线播放一区二区 | 四虎在线观看视频 | 天天草天天 | 久久人人爽爽人人爽人人片av | 爱色av.com| 狠狠躁夜夜av | 亚洲美女在线国产 | 国产一级在线观看视频 | 麻豆免费在线播放 | 天堂av免费观看 | 六月丁香在线视频 | 欧美亚洲国产一卡 | 免费看黄色大全 | 国产精品成人一区二区三区吃奶 | 久草在线电影网 | 国产成人一区二区三区电影 | 国产精选视频 | 亚洲国产天堂av | 天天色天天射天天操 | 91精品办公室少妇高潮对白 | 亚洲午夜精品在线观看 | 精品主播网红福利资源观看 | 97精品在线视频 | 精品麻豆入口免费 | 亚洲一区网 | 久久黄色片子 | 午夜av一区二区三区 | 亚洲精品在线一区二区三区 | 成人av一区二区三区 | 啪啪小视频网站 | 国产精品99久久久精品免费观看 | 不卡电影免费在线播放一区 | 久久乐九色婷婷综合色狠狠182 | 丁香影院在线 | 日韩视频免费观看高清完整版在线 | 久久久久免费观看 | 99精品在线免费视频 | 婷婷激情在线 | 久久久婷| 久久婷婷久久 | 亚洲人xxx| 91av在线看| 人交video另类hd | 国产精品美| 免费网站v | 国产精品三级视频 | 91大神精品视频在线观看 | 97超碰在线播放 | 午夜久久成人 | 午夜国产福利视频 | av 一区二区三区 | 久久久国产99久久国产一 | 日韩激情网 | 91在线日本| 九九热有精品 | 亚洲精品国精品久久99热 | 亚洲国产高清视频 | 日韩美一区二区三区 | 91视频国产高清 | 一区三区视频在线观看 | 国产视频日本 | 韩日在线一区 | 精精国产xxxx视频在线播放 | a级片久久久 | 婷婷久久网| 99精品视频在线 | 中文字幕在线播出 | 日本久草电影 | 奇米777777| 色香蕉视频 | 日日草天天草 | 正在播放国产一区二区 | 狠狠色丁香婷婷综合最新地址 | 丁香六月婷婷综合 | 亚洲国产精品人久久电影 | 亚洲一区二区高潮无套美女 | 久久综合九色九九 | 毛片网站免费在线观看 | 毛片网在线播放 | 国产精品成人av电影 | 日韩精品极品视频 | 国产免费资源 | 中文乱幕日产无线码1区 | 91精品对白一区国产伦 | 国产精品美女久久久久久免费 | 高清免费在线视频 | 香蕉在线视频播放网站 | 亚洲成aⅴ人在线观看 | 久久综合婷婷 | 天天色播| 午夜神马福利 | 精一区二区 | 欧美黄污视频 | 在线观看免费黄视频 | www91在线观看 | 精品美女久久 | 久久免费视频7 | 精品国产一区二区三区四区vr | 亚洲高清色综合 | 日韩电影一区二区三区 | 日韩艹 | 国产精品久久在线 | 国产手机视频在线 | 黄色aa久久 | 国产91免费观看 | 久久免费视频一区 | www久久久 | 亚洲毛片视频 | 又爽又黄在线观看 | www.色综合.com| 精品国模一区二区三区 | 久久久久久久久久亚洲精品 | 99精品国产在热久久下载 | 色视频成人在线观看免 | 欧美色一色 | 91视频观看免费 | 911久久香蕉国产线看观看 | av免费播放 | 日韩一区二区三区免费电影 | 在线日本看片免费人成视久网 | 天天操天天干天天摸 | 国产伦精品一区二区三区高清 | 国产精品一区二区久久 | 日日夜精品 | 欧美一级视频一区 | 亚洲综合激情 | 911香蕉| 人人澡人人爱 | 一本一道波多野毛片中文在线 | 日韩无在线 | 国产精品美女久久久久久久久久久 | 国产精品福利视频 | 亚洲国产wwwccc36天堂 | 摸阴视频 | 久久国产精品网站 | 久久免费的视频 | 久久精品视频日本 | 国产综合91 | 日本中文字幕视频 | 在线国产视频 | 在线观看岛国 | 国产精品黄色影片导航在线观看 | 日韩一级网站 | 欧美精品久久久久久久亚洲调教 | 久久精品视频在线看 | 黄a在线观看 | 99热高清 | 国产精品午夜在线 | 麻豆视频国产精品 | 精品国产一区二区三区噜噜噜 | 日韩精品免费一线在线观看 | 亚洲国产中文字幕在线观看 | 久久精品五月 | 久久久黄视频 | 高清av免费一区中文字幕 | 国产精品视频999 | 国产剧情一区二区在线观看 | 中文日韩在线视频 | av在线一二三区 | 91精品欧美 | 草在线视频 | www操操操 | 91成人网页版 | 操操操日日 | 99 久久久久 | 中文在线免费看视频 | 国产99免费 | 亚洲精品在线观看av | 一本一道波多野毛片中文在线 | 免费看亚洲毛片 | 精品久久福利 | 欧美大片第1页 | 欧美日韩不卡一区二区 | 美女国产精品 | 成年人免费在线观看网站 | 欧美一级乱黄 | 亚洲欧美综合 | 日韩在线观看不卡 | 中文字幕在线观看2018 | www·22com天天操| 麻豆 videos| 久久久久在线 | 亚洲性xxxx| 伊人久久在线观看 | 欧美成人中文字幕 | 亚洲永久精品视频 | 国产精品99久久久久久人免费 | 国产免费作爱视频 | 黄色看片 | 精品久久1| 黄色网在线免费观看 | 日韩日韩日韩日韩 | 久久在线观看视频 | 国产精品免费大片视频 | 久久久91精品国产 | 色天天久久 | 精品一区二区三区电影 | 日本久久综合视频 | 四虎影视成人永久免费观看视频 | 另类五月激情 | 国产日本三级 | 视频一区视频二区在线观看 | 国产精品夜夜夜一区二区三区尤 | 免费观看视频黄 | 在线亚洲观看 | 国内精品久久久久久久久 | 高清av在线免费观看 | 亚洲激精日韩激精欧美精品 | 九九视频热 | 91在线成人 | 久久久www成人免费精品张筱雨 | 欧美黑吊大战白妞欧美 | 88av视频 | 99在线国产 | 六月丁香婷 | 婷婷 综合 色 | 色橹橹欧美在线观看视频高清 | 久久99热国产 | 丁香电影小说免费视频观看 | 国产很黄很色的视频 | 国产在线观看你懂的 | 97超碰站| 91视频在线免费观看 | 久久亚洲国产精品 | 欧美一级片在线免费观看 | 久久精品视频免费观看 | 久久av中文字幕片 | 免费在线观看一区二区三区 | 香蕉视频导航 | 97超碰中文| 成人超碰在线 | 五月天婷婷在线播放 | 色婷婷在线观看视频 | 中文字幕第一页在线播放 | 99热手机在线 | 伊人宗合网 | 国产va饥渴难耐女保洁员在线观看 | 日韩高清av | 国产精品av免费在线观看 | 日韩电影中文字幕 | 欧洲亚洲精品 | 日韩在线欧美在线 | 亚洲美女精品 | 天天五月天色 | 99久久精品免费看国产四区 | 国产精品一区在线 | 亚洲 欧美 综合 在线 精品 | 永久黄网站色视频免费观看w | 亚洲成人黄色在线 | 国产精品久久久久久久久蜜臀 | 日本aa在线 | 91成人天堂久久成人 | 伊人五月天 | 欧美在线视频第一页 | 午夜精品一区二区三区在线观看 | 国产亚洲精品成人av久久ww | 一级a性色生活片久久毛片波多野 | 国产精品久久久久av免费 | 欧美在线你懂的 | 亚洲成人国产精品 | 欧美日韩免费观看一区二区三区 | 九九九免费视频 | 又黄又爽又色无遮挡免费 | 国产精久久 | 国产成人精品一区二三区 | 欧美日本一区 | 五月婷婷一级片 | 一级免费av| 成年人免费在线播放 | 最新精品视频在线 | 欧美日韩免费观看一区=区三区 | 97在线观看免费视频 | 美女免费视频观看网站 | 国产资源在线视频 | 国产精品亚洲精品 | 香蕉视频网站在线观看 | 国产综合香蕉五月婷在线 | 在线色亚洲 | 超碰在线97免费 | 在线观看网站你懂的 | 久久9999久久 | 婷婷资源站| 中文字幕久久网 | 在线免费av网站 | 青青草国产在线 | 99热在| 精品久久久精品 | 五月开心六月婷婷 | 国产伦理久久精品久久久久_ | 99c视频在线 | 夜夜爽www | 亚洲欧美日韩中文在线 | 992tv在线成人免费观看 | 久久精品日韩 | 国产美女视频免费 | 99久久夜色精品国产亚洲96 | 国产五月天婷婷 | 日韩黄色免费看 | 亚洲男模gay裸体gay | 波多野结衣在线观看视频 | 天天干天天干天天干 | 欧美日韩另类视频 | 九九精品在线观看 | 黄色av电影在线观看 | 最新av网站在线观看 | 96国产在线 | 天天干天天干天天射 | 久久精品99精品国产香蕉 | 国产精品入口麻豆www | 蜜臀av免费一区二区三区 | 97av视频| aav在线 | 最近中文字幕免费 | 久草网站在线 | 一区二区亚洲精品 | 国产原创在线 | 超碰人人在线观看 | 2023亚洲精品国偷拍自产在线 | 久久 在线 | 欧美另类视频 | a视频免费在线观看 | 天天拍天天色 | av在线网站免费观看 | 99精品视频在线观看播放 | 久久久精品国产一区二区三区 | 日本中文字幕电影在线免费观看 | 久久福利在线 | 日韩久久影院 | 成年人在线观看 | 99爱国产精品 | 日本激情视频中文字幕 | 国产精品成久久久久三级 | av一级片在线观看 | ww视频在线观看 | av片一区| 国产黄色成人 | 亚洲电影久久久 | 亚洲一区不卡视频 | 黄色毛片在线 | 国产精品久久久久久五月尺 | 国产女v资源在线观看 | 2019免费中文字幕 | 久久不卡日韩美女 | 福利电影久久 | 日韩深夜在线观看 | 狠狠躁夜夜躁人人爽超碰91 | 天天综合网天天综合色 | 亚洲美女视频在线 | 91精选在线观看 | 日韩精品在线视频免费观看 | 国产精品婷婷 | 91在线播放综合 | 中文字幕中文字幕中文字幕 | 在线91观看 | 国产精品午夜av | 国产1区在线 | 五月的婷婷 | 97成人精品区在线播放 | 一级免费看视频 | 99精品视频播放 | 丝袜+亚洲+另类+欧美+变态 | 欧美成人h版 | 久久精品波多野结衣 | 久久精品99国产国产精 | 中文字幕日韩在线播放 | 国产剧情一区二区在线观看 | 久草在线资源免费 | 国产黄av | 五月婷婷播播 | 九九一级片 | 99视频精品在线 | 欧美日韩性视频在线 | 中文字幕资源网在线观看 | 久久高清免费视频 | 久久中文精品视频 | 日韩羞羞| 国产成人精品久久亚洲高清不卡 | 夜夜嗨av色一区二区不卡 | 97精品国产97久久久久久免费 | 中字幕视频在线永久在线观看免费 | 欧美国产精品一区二区 | av不卡免费在线观看 | 久久久国产99久久国产一 | 精品专区一区二区 | 日韩a在线观看 | 又黄又刺激的网站 | 久久综合欧美精品亚洲一区 | 成人亚洲免费 | 特黄一级毛片 | 99久久99久久精品国产片果冰 | av免费成人 | 在线亚洲成人 | 天天操夜夜叫 | 免费在线观看成人小视频 | 成 人 黄 色 视频 免费观看 | 毛片永久免费 | 最新日韩在线观看视频 | 最近免费中文字幕mv在线视频3 | 狠色狠色综合久久 | 91成人在线看 | 中文在线字幕免 | 久久亚洲综合国产精品99麻豆的功能介绍 | 日韩精品一区电影 | 久久激情五月丁香伊人 | 日韩精品不卡在线 | 日日婷婷夜日日天干 | 人人爽人人爽人人 | 视频在线观看国产 | 国产原创中文在线 | 久久免费一 | 在线观看成人网 | 97成人精品视频在线观看 | 久久久久久久久艹 | 久久艹艹 | 日日草天天草 | 日韩在线免费小视频 | 日韩高清不卡一区二区三区 | 久久综合久久综合久久综合 | www.五月天色 | 国语黄色片 | 久草在线视频国产 | 欧美亚洲成人免费 | 黄p网站在线观看 | 成人久久18免费 | 97成人资源 | 亚州精品一二三区 | 久久综合精品国产一区二区三区 | 日本精品视频一区 | 日韩中文三级 | 香蕉网在线播放 | 久久高清国产视频 | 国产一区在线免费观看视频 | 国产.精品.日韩.另类.中文.在线.播放 | 99热.com| 国产成人精品免费在线观看 | 日韩欧美亚洲 | 97在线观看免费高清完整版在线观看 | 西西444www大胆高清视频 | 99精品免费 | 香蕉蜜桃视频 | 久久av福利| 91av社区| 韩日成人av| 久草视频在线免费看 | 麻豆视频入口 | 亚洲综合一区二区精品导航 | 91av视频导航 | 九色精品在线 | 日韩美女av在线 | 手机看片中文字幕 | 欧美大片在线看免费观看 | 日韩在线网址 | av在线精品 | 久久九九视频 | 91免费观看视频网站 | 欧美色一色 | 狠狠色丁香婷婷综合欧美 | 激情影音| 九九在线视频 | 九色激情网| 亚洲综合在线播放 | 在线观看免费黄色 | 99热这里只有精品8 久久综合毛片 | 免费三级黄| 欧美大码xxxx | 日韩精品中文字幕在线播放 | 日韩高清一区二区 | 久久久久观看 | 香蕉在线视频播放网站 | 日韩综合在线观看 | 国产黄色电影 | 国产97碰免费视频 | 国产精品久久久久免费 | 丁香激情综合久久伊人久久 | av免费线看| 婷婷色站 | 国产精品久久一区二区无卡 | 五月婷婷激情综合网 | 欧美一级黄色视屏 | 久久国产精品视频免费看 | 国产精品免费视频久久久 | 美女黄频视频大全 | 特级西西444www大精品视频免费看 | 日韩中文字幕在线 | 久久毛片视频 | 免费看一级黄色 | 中文字幕在线视频第一页 | 久久在线 | 亚洲免费国产 | 婷婷伊人五月 | 中文字幕欧美日韩va免费视频 | 特黄特色特刺激视频免费播放 | 免费在线观看成人 | 国产一区二区精品久久91 | 亚洲视频免费在线观看 | 精品久久久久国产免费第一页 | 五月天免费网站 | 2021久久| 久久国产a | 成人在线观看你懂的 | 美腿丝袜一区二区三区 | 五月天丁香视频 | 天天草天天色 | 国产精品一区二区免费视频 | 在线观看的a站 | 国产成人黄色在线 | 国产亚洲一区二区在线观看 | 中文字幕免费在线 | 91污在线观看 | 在线观看一区 | 美女视频黄在线观看 | 欧美日韩在线视频一区二区 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 亚洲精品综合在线 | 91成版人在线观看入口 | 91成人在线看 | 中文字幕在线影院 | av高清一区二区三区 | 手机av在线网站 | 黄色小说在线观看视频 | 成人久久综合 | 黄色视屏在线免费观看 | 亚洲午夜久久久久久久久 | 国产精品成人一区二区 | 日本在线视频一区二区三区 | 青草视频在线播放 | 国产精品久久久av久久久 | 国产区高清在线 | 美女网站在线 | 日本在线精品视频 | 日韩福利在线观看 | 亚洲欧美国产精品va在线观看 | 日韩三级中文字幕 | 天天视频色 | 中文字幕在线免费看线人 | 免费网站v| 亚洲欧洲精品一区二区精品久久久 | 久久精品国产免费观看 | 香蕉久草在线 | 又黄又爽的免费高潮视频 | 免费黄色网址网站 | 天天做天天爱天天爽综合网 | 六月丁香色婷婷 | 91看片淫黄大片一级在线观看 | 色综合天天视频在线观看 | 亚洲在线精品视频 | 亚洲经典视频在线观看 | 人人澡av| 久久成人毛片 | 国产精品 欧美 日韩 | 中文亚洲欧美日韩 | 久久综合久久鬼 | 欧美一区视频 | 亚洲综合在线一区二区三区 | 成人蜜桃 | 激情网色| 91桃色免费视频 | 天天综合网 天天 | 国语精品免费视频 | 精品久久久久久亚洲 | 天堂麻豆 | 91丝袜美腿 | 在线视频你懂得 | 五月婷婷操 | 国产高清99 | 日韩在线观看中文 | 91九色国产蝌蚪 | 色综合色综合久久综合频道88 | 天天操夜夜操天天射 | 激情影音先锋 | 亚洲精品在线电影 | av大片网址 | 午夜狠狠干 | 国产精品一区二区在线观看免费 | 五月天婷亚洲天综合网精品偷 | 国产色久 | 人人爽人人爽人人片av | 9999国产精品 | 亚洲激情 在线 | 国产九色91 | 五月婷婷黄色网 | 五月婷婷香蕉 | 日韩一区二区三区高清在线观看 | 免费视频xnxx com | 国产精品久久久久久久免费观看 | 99色亚洲| 亚洲视频在线免费看 | 四虎在线免费观看 | 成人一级在线 | 九九涩涩av台湾日本热热 | 91在线视频观看 | 国产亚洲精品久久网站 | www久久精品 | 中文字幕在线视频网站 | 特及黄色片 | 色婷婷色 | 97色在线视频 | 在线观看资源 | 日本二区三区在线 | 免费看91的网站 | 亚洲精品在 | 久久精品99国产精品日本 | 四虎影视精品永久在线观看 | 狠狠色丁香婷婷综合视频 | 欧美极度另类性三渗透 | 国产福利精品一区二区 | 免费国产黄线在线观看视频 | 日韩精品一区二区三区免费观看 | 中文字幕日本特黄aa毛片 | 免费看黄的视频 | 综合色亚洲 | mm1313亚洲精品国产 | 99理论片 | 精品久久久免费 | 国产精品一区二区三区久久 | 亚洲在线精品 | 99热官网| 美女网站黄免费 | 欧美成人播放 | 亚洲经典精品 | 美女福利视频一区二区 | 91看片黄色 | www看片网站 | 91视频免费网址 | 午夜视频一区二区 | 成人avav| 又黄又爽又色无遮挡免费 | 在线看v片 | 久久丁香 | 99视频免费在线观看 | 国产高清视频免费最新在线 | 久久久久久久久久福利 | 日本三级人妇 | 超碰免费观看 | 二区三区av | 日批在线看 | 97超在线 | 亚洲狠狠操 | 国产视频一区在线播放 | 国产99久久久久 | 涩涩资源网 | 四虎国产 | 国产精品 日韩精品 | 色com网| 国产精品第二页 | 午夜精品久久久久久久99无限制 | wwwww.国产 | 久久成人亚洲欧美电影 |