3atv精品不卡视频,97人人超碰国产精品最新,中文字幕av一区二区三区人妻少妇,久久久精品波多野结衣,日韩一区二区三区精品

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Seastar Tutorial 简明教程

發(fā)布時間:2023/12/15 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Seastar Tutorial 简明教程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這是對于Seastar官方tutorial的部分翻譯,同時也結合了自己的思考。

Introduction

Seastar是一個用于在現(xiàn)代多核機器上編寫高性能的復雜的服務端應用的C++庫。

Seastar是一個完整的異步編程框架,使用futures和continuations兩個概念來抽象對于I/O事件的處理。

因為現(xiàn)代處理器核心共享數(shù)據(jù)會帶來很多懲罰,所以Seastor想要避免多個核心共享內存,而用消息傳遞機制取代之。

Since modern multi-core and multi-socket machines have steep penalties for sharing data between cores (atomic instructions, cache line bouncing and memory fences), Seastar programs use the share-nothing programming model, i.e., the available memory is divided between the cores, each core works on data in its own part of memory, and communication between cores happens via explicit message passing (which itself happens using the SMP’s shared memory hardware, of course).

Asynchronous programming

最開始的服務器都是同步模型,為每一條連接分配一個進程(線程),然后在線程內以同步方式編寫代碼,但是很快遇到了C10K問題。

隨后異步模型——事件驅動模型開始得到流行,one thread per CPU,每個線程運行一個loop,不斷地使用poll(epoll)獲取讀寫事件并處理。

但是事件驅動模型有兩個問題:

  • Complexity.很難編寫復雜的異步服務器。
  • Non-blocking.很難確保線程對事件的處理是非阻塞的,如果系統(tǒng)沒有提供相應的非阻塞調用,那么就只能開辟額外的線程來避免CPU空閑,這又引起上下文切換的開銷。
  • 另外,在追求極致性能的時候,編程框架無法避免的要考慮兩個問題:

  • Modern Machines.現(xiàn)代機器有許多核心和深層內存層次(從L1緩存到NUMA),不可擴展的編程實踐(比如加鎖)會對多核性能造成災難性的影響;共享內存和無鎖同步原語是可用的,但是戲劇性地它們比只讓數(shù)據(jù)存在于一個核心的緩存上要更慢,并且也阻止了應用程序向更多核擴展。
  • Programming Language.我們需要能給程序員以完全的控制權、零運行時開銷的語言。
  • Seastar就是一個為了解決上述問題的異步服務器應用編程框架,它是完全單線程的(對每個核心來說是單線程),可以很容易地擴展到多核并且共享內存帶來的開銷被最小化了,并且基于C++14。

    Seastar

    Seastar使用一些概念來實現(xiàn)極致性能:

    • Cooperative micro-task scheduler: 每個核心上運行一個協(xié)作式任務調度器,每個任務都非常輕量——只處理I/O操作的結果或者提交I/O操作。
    • Share-nothing SMP architecture: 每個核心都獨立于其他核心,內存、數(shù)據(jù)結構、CPU時間都不共享,核心之間的通信通過消息傳遞完成。一個Seastar核心被稱做一個shard。
    • Future based APIs: 這允許你提交一個I/O操作并且鏈式添加在I/O操作完成后要執(zhí)行的任務。很容易去并行執(zhí)行多個I/O操作。
    • Share-nothing TCP stack: Seastar也提供一個內置的高性能TCP/IP協(xié)議棧,它構建在任務調度器和無共享架構的基礎之上,提供零拷貝功能。
    • DMA-based storage APIs: Seastar提供零拷貝存儲的API,允許你使用DMA傳輸數(shù)據(jù)到存儲設備上或者反過來。

    Threads and memory

    Seastar threads

    Seastar程序在每個CPU上運行一個線程,每個線程運行自己的事件循環(huán),它也被稱作engine。Seastar程序默認會使用所有可用的核心,在每個核心上都開啟一個線程。可以打印seastar::smp::count來查看被啟動的線程數(shù)。

    每個engine都被綁定在一個不同的硬件線程上(為了CPU親和性),且app的初始化函數(shù)只在一個線程上運行。

    可以傳遞命令行參數(shù)-cn來制定要運行的線程數(shù),但是這個數(shù)字不能超過實際的硬件線程數(shù)。

    Seastar memory

    Seastar程序會把內存分片,每個線程預分配一大塊內存,然后只使用自己的那部分內存進行分配工作。

    默認情況下,Seastar程序預分配所有的機器內存(除了操作系統(tǒng)保留的部分),可以使用--reserve-memory選項指定要為操作系統(tǒng)保留的內存,或者使用-m選項指定Seastar程序要使用的內存,當然所用內存不能超過物理內存大小。

    Introducing futures and continuations

    future和continuation的存在使得編寫大型的、復雜的異步程序更容易,編寫出來的代碼通??勺x性好、更容易理解。

    future表示一個計算的結果但是可能尚未就緒,一個future通常被一個異步函數(shù)返回,這個函數(shù)會確保future最終就緒。

    continuation是一個當future就緒時被運行的回調,使用then()方法可以把一個continuation附加在一個future上。

    下面的程序將在輸出Sleeping…一秒后輸出Done.并退出:

    using namespace seastar; int main(int argc, char **argv) {app_template app;app.run(argc, argv, [] {std::cout << "Sleeping..." << std::flush;using namespace std::chrono_literals;return seastar::sleep(1s).then([]{std::cout << "Done.\n";});}); }

    下面是一個并行執(zhí)行任務的例子:

    seastar::future<> f() {std::cout << "Sleeping... " << std::flush;using namespace std::chrono_literals;seastar::sleep(200ms).then([] { std::cout << "200ms " << std::flush; });seastar::sleep(100ms).then([] { std::cout << "100ms " << std::flush; });return seastar::sleep(1s).then([] { std::cout << "Done.\n"; }); }

    一個future<T>類型的then中的函數(shù)體將接受一個T類型的參數(shù):

    seastar::future<int> slow() {using namespace std::chrono_literals;return seastar::sleep(100ms).then([] { return 3; }); }seastar::future<> f() {return slow().then([] (int val) {std::cout << "Got " << val << "\n";}); }

    Ready futures

    當調用then時,對應future的值可能已經(jīng)就緒了,那么then()將不會把continuation鏈式追加到future對象中,而是直接執(zhí)行。

    但是這種優(yōu)化也有限制,then()的實現(xiàn)會統(tǒng)計這種立即執(zhí)行的continuation的次數(shù),如果達到上限(目前是256次)將會把控制返回給event loop。否則有可能造成event loop乃至其他future的continuations的饑餓現(xiàn)象。

    make_ready_future<>將返回一個已就緒的future對象。

    Coroutines

    需要C++20支持。

    Continuations

    Capturing state in continuations

    C++11中的lambda對象可以作為then()參數(shù),在future就緒后被調用,而lambda是可以捕獲參數(shù)的,所以如果continuation不能立即執(zhí)行,那么lambda所捕獲的參數(shù)要被保存,這需要拷貝數(shù)據(jù)并會產(chǎn)生運行時開銷,但是這是不可避免的(總比讓當前線程阻塞然后讓參數(shù)保存在棧中,并且切換到別的線程要更快)。

    按值捕獲參數(shù)沒有問題,但是如果按引用捕獲就可能引起引用失效等嚴重bug,比如下面這個反例:

    seastar::future<int> incr(int i) {using namespace std::chrono_literals;// Oops, the "&" below is wrong:return seastar::sleep(10ms).then([&i] { return i + 1; }); }

    一個解決方法是使用do_with()習語,它可以確保一個對象的生命期長于對應continuation的生命期,這使得按引用捕獲成為可能,并且非常方便。

    Seastar應用中常常使用按移動捕獲,即廣義捕獲,下面是一個例子:

    int do_something(std::unique_ptr<T> obj) {// do some computation based on the contents of obj, let's say the result is 17return 17;// at this point, obj goes out of scope so the compiler delete()s it. } seastar::future<int> slow_do_something(std::unique_ptr<T> obj) {using namespace std::chrono_literals;return seastar::sleep(10ms).then([obj = std::move(obj)] () mutable {return do_something(std::move(obj));}); }

    注意要使用兩次std::move并且聲明為mutable(否則無法移動第二次——只讀對象不可移動)。

    Evaluation order considerations(C++14 only)

    在C++17之前,針對以下調用方法:

    return do_something(obj).then([obj = std::move(obj)] () mutable {return do_something_else(std::move(obj)); });

    有可能先計算obj = std::move(obj),再調用do_something(obj),就導致了use–after-move問題。

    解決方法就是把do_something和then分開寫,不要寫在一條語句中。

    Handling exceptions

    continuation執(zhí)行中拋出的異常會被系統(tǒng)捕獲并存儲到對應的future對象中,此時future對象變?yōu)榫途w態(tài)(但它不持有一個值,而是持有一個異常)。

    對一個持有異常的future調用的then()方法將會被忽略,異常會傳遞給后面的continuation,就像普通函數(shù)中的異常拋出事件一樣:

    // 普通函數(shù)發(fā)生異常后的執(zhí)行流 line1(); line2(); // throws! line3(); // skipped// 有異常的future的執(zhí)行流 retur line1().then([] {return line2(); // throws! }).then([] {return line3(); // skipped });

    通常then()提供的終止執(zhí)行鏈是合理的,但還有其他選擇:

    • .then_wrapped(): 會把future<T>對象直接傳給continuation(而不是像then()一樣傳遞T對象),所以后面的continuation可以自己判斷是否存在異常。

    • .finally():無論future是否攜帶異常,finally()中的continuation都將被執(zhí)行,就像java中的finally塊一樣。

    • .handle_exception():僅當future攜帶異常時才會執(zhí)行,其中的處理函數(shù)應該接受異常類型的參數(shù)。

      一個用法是fut.discard_result().handle_exception(...),當future就緒時忽略成功值(if exists)而只處理異常(if exists)。

    Exceptions vs. exceptional futures

    TODO: https://github.com/scylladb/seastar/blob/master/doc/tutorial.md#exceptions-vs-exceptional-futures

    Lifetime management

    一個異步函數(shù)往往在調用返回后過一段時間才執(zhí)行一個操作,如果它要操作已經(jīng)存在的對象或者臨時對象,那么我們就要關心這些對象的生命期:確保在異步函數(shù)完成前這些對象不會被銷毀,并確保在這些對象不會被使用時銷毀它們。Seastar提供了多種機制,可以安全有效地保證對象正確地“存活”。

    Passing ownership to continuation

    最直接的方法就是讓continuation擁有對象的所有權。

    可以通過捕獲對象副本或移動捕獲對象從而將對象的所有權轉移到continuation。

    但有些時候移動對象不受歡迎,比如一些代碼可能保持著對該對象的引用,那么在移動后他們將持有失效的引用;另外對一些復雜對象來說,移動的代價可能非常大,這時往往需要使用unique_ptr<T>。

    Keeping ownership at the caller

    傳遞所有權這一方法確實有效,但是有時會變得非常復雜,比如要在continuation之間頻繁移動一個對象:

    seastar::future<> slow_op(T o) {return seastar::sleep(10ms).then([o = std::move(o)] {...return std::move(o);}).then([](T o) {...}); }

    一種更簡單的方法是讓調用者保存對象,而只傳遞對象的引用:

    seastar::future<> slow_op(T& o) { // <-- pass by reference return seastar::sleep(10ms).then([&o] {// <-- capture by reference // first continuation, doing something with o ... }).then([&o]) { // <-- another capture by reference // second continuation, doing something with o ... });}

    不過這樣就相當于把生命期管理的責任轉移給了調用者,而調用者怎么知道這個對象應該生存多久呢?

    其實也很簡單,就是對象最晚生存到對應的future就緒時,所以有了以下慣例:

    Whenever an asynchronous function takes a parameter by reference, the caller must ensure that the referred object lives until the future returned by the function is resolved.

    不幸的是,這條慣例并沒法用C++語法約束,而且很多non-Seastar程序員也不遵循此慣例。

    Seastar提供了一個方便的習語,do_with():

    seastar::future<> f() { return seastar::do_with(T1(), T2(), [] (auto& obj1, auto& obj2) { return slow_op(obj1, obj2); }}

    do_with會把給定的對象保存在堆上,對應的lambda中應該以引用形式使用這個對象,do_with保證在返回的future就緒前銷毀此對象。

    do_with有一些注意事項:

    • 一般傳入右值對象作為參數(shù),比如臨時對象或者被std::move()的對象。
    • lambda應接受auto&形式的參數(shù),以避免忘記按引用使用對象。
    • lambda函數(shù)體中仍要把該對象以引用形式傳遞。
    • 在令返回的future成為就緒態(tài)后,不該再使用這些對象。

    下面是一個反例:

    seastar::future<> slow_op(T obj); // WRONG: should be T&, not Tseastar::future<> f() { return seastar::do_with(T(), [] (auto& obj) { return slow_op(obj); }}

    一個慣例是返回的future就緒后,對應的異步函數(shù)不應該在駐留在后臺了:

    In general, it is rarely a good idea for an asynchronous function to resolve while leaving behind background operations - even if those operations do not use the do_with()ed objects. Background operations that we do not wait for may cause us to run out of memory (if we don’t limit their number) and make it difficult to shut down the application cleanly.

    Sharing ownership(reference counting)

    引用計數(shù)法可以實現(xiàn)即通過“拷貝”方式來傳遞對象,又不需要付出巨大拷貝開銷。

    一個實例是seastar::file,它持有一個打開的文件對象,一個file對象可以被拷貝,所有的副本都指向同一個打開的文件,拷貝時引用計數(shù)加1,file對象銷毀時引用計數(shù)減1,當引用計數(shù)減到0時實際的文件將被關閉。

    下面是一個例子:

    seastar::future<uint64_t> slow_size(file f) { return seastar::sleep(10ms).then([f] { return f.size(); });}

    這個例子中返回了一個最后的f對象的相關future,按理來說slow_size函數(shù)返回后file對象會被銷毀,返回的future<uint64_t>對象將失效,但是既然file對象沒有調用close(),說明在別處它還有一份副本存在(比如slow_size的調用方),所以f仍有效。

    引用計數(shù)會有一些運行時開銷,但是要知道Seastar對象僅被一個CPU核心使用,所以引用計數(shù)的增減不是原子操作而是普通的整數(shù)增減,故開銷會很小。

    C++11提供了shared_ptr<T>作為引用計數(shù)的實現(xiàn),但是處于多線程環(huán)境下運行的考慮,它使用較慢的原子操作來加減計數(shù)值,故Seastar提供了對應的單線程實現(xiàn)——seastar::shared_ptr<T>,其不使用原子操作。

    Seastar還提供了seastar::lw_shared_ptr<T>類,它不支持多態(tài)類型所以開銷更小,優(yōu)先推薦使用此類型,當T為多態(tài)類型時切換為seastar::shared_ptr<T>類型,永遠不應該在Seastar應用中使用std::shared_ptr<T>類型。

    Saving objects on the stack

    把對象保存在棧中是一個方便的做法,Seastar提供了seastar::thread來完成此工作:

    seastar::future<> slow_incr(int i) { return seastar::async([i] { seastar::sleep(10ms).get(); // We get here after the 10ms of wait, i is still available. return i + 1; });}

    詳細介紹參見[seastar::thread]一節(jié)。

    Advanced futures

    Futures and interruption

    一個運行的future無法被中斷。

    Futures are single use

    對一個future<int>變量調用get()或then()后,它將會失效,我們需要把值存儲到其他地方。

    Loops

    Seastar提供幾種原語,用于以與future/promise模型完美結合的方式表達循環(huán)語義,一個重要特點是Seastor循環(huán)原語的每輪迭代后都有一個搶占點,允許循環(huán)中執(zhí)行其他任務。

    repeat

    循環(huán)執(zhí)行函數(shù),該函數(shù)應返回future<stop_iteration>(stop_iteration::no)或future<stop_iteration>(stop_iteration::yes),repeat據(jù)此來決定重新執(zhí)行該函數(shù)還是結束循環(huán)。repeat會返回future<>,此future在循環(huán)結束或者循環(huán)體執(zhí)行出錯時就緒。

    seastar::future<int> recompute_number(int number);seastar::future<> push_until_100(seastar::lw_shared_ptr<std::vector<int>> queue, int element) { return seastar::repeat([queue, element] { if (queue->size() == 100) { return make_ready_future<stop_iteration>(stop_iteration::yes); } return recompute_number(element).then([queue] (int new_element) { queue->push_back(new_element); return stop_iteration::no; }); });}

    do_until

    循環(huán)執(zhí)行函數(shù),但它通過一個條件來檢查是否要停止循環(huán)。

    seastar::future<int> recompute_number(int number);seastar::future<> push_until_100(seastar::lw_shared_ptr<std::vector<int>> queue, int element) { return seastar::do_until([queue] { return queue->size() == 100; }, [queue, element] { return recompute_number(element).then([queue] (int new_element) { queue->push_back(new_element); }); });}

    do_for_each

    接受一個范圍(或者一對迭代器)和一個函數(shù)體,一個接一個地將范圍中的元素作為參數(shù)調用此函數(shù)體。通常函數(shù)體應該返回一個future<>。

    seastar::future<>append(seastar::lw_shared_ptr<std::vector<int>> queue1, seastar::lw_shared_ptr<std::vector<int>> queue2) { return seastar::do_for_each(queue2->begin(), queue2->end(), [queue1](int element) { std::cout << "in loop - " << element << std::endl; queue1->push_back(element); return make_ready_future<>(); });}

    parallel_for_each

    是do_for_each的高并發(fā)版變體,所有的迭代同時排隊,所以函數(shù)體的調用順序不能保證。

    例如對于以下場景,parallel_for_each將在1s左右完成所有迭代,而do_for_each要花費10s:

    seastar::future<>append(seastar::lw_shared_ptr<std::vector<int>> queue1, seastar::lw_shared_ptr<std::vector<int>> queue2) { return seastar::max_concurrent_for_each(queue2->begin(), queue2->end(), 2,[queue1](int element) { std::cout << "in loop - " << element << std::endl; queue1->push_back(element); return sleep(1s); });}

    max_concurrent_for_each

    是parallel_for_each的限制版,使用時可以傳入一個max_concurrent表示最多排隊的迭代數(shù)。

    when_all: waiting for multiple futures

    when_all()返回一個future<tuple<future<t1>, future<t2>...>>,該future會在給定的futures全部就緒后就緒。

    when_all()只接收右值參數(shù)(臨時future或者被std::move的future),

    一個future就緒時可能是得到了結果也可能是出現(xiàn)了異常,無論哪種情況都不影響when_all()的工作流程,只需要在獲取future的結果的時候判斷一下是否有異常發(fā)生:

    future<> f() {using namespace std::chrono_literals;future<> slow_success = sleep(1s);future<> slow_exception = sleep(2s).then([] { throw 1; });future<int> slow_two = sleep(2s).then([] { return 2; });return when_all(std::move(slow_success), std::move(slow_exception), std::move(slow_two)).then([] (auto tup) {std::cout << std::get<0>(tup).available() << "\n";std::cout << std::get<1>(tup).failed() << "\n";// 如果不顯式ignore失敗的future,那么將會有"Exceptional future ignored"錯誤信息被輸出.std::get<1>(tup).ignore_ready_future();std::cout << std::get<2>(tup).get0() << "\n";}); }

    上面的例子要自己分類處理異常還是比較繁瑣,所以Seastar提供了when_all_succeed()函數(shù),當所有futures都就緒時,when_all_succeed將結果傳遞給continuation(<tuple<t1, t2...>>形式)。如果有一個或多個futures失效,when_all_succeed返回某一個失效的future(包含了某一個失效的futures的異常),這時就可以使用handle_exception()continuation來方便地處理這些異常,示例代碼如下:

    using namespace seastar; future<> f() {using namespace std::chrono_literals;return when_all_succeed(make_ready_future<int>(2),make_exception_future<double>("oops")).then([] (int i, double d) {std::cout << i << " " << d << "\n";}).handle_exception([] (std::exception_ptr e) {std::cout << "exception: " << e << "\n";}); }

    但是Tutorial給的這個代碼是有問題的,when_all_succeed成功時不是返回int, double這些零散的結果,而是返回一個tuple<int, double>,所以以上代碼會編譯失敗,正確的寫法是:

    future<> f() {using namespace std::chrono_literals;return when_all_succeed(make_ready_future<int>(2),make_exception_future<double>("oops")).then([] (std::tuple<int, double> t) {std::cout << std::get<0>(t) << " " << std::get<1>(t) << "\n";}).handle_exception([] (std::exception_ptr e) {std::cout << "exception: " << e << "\n";}); }

    Semaphores

    Pipes

    Seastar提供pipe<T>來實現(xiàn)類似UNIX管道的功能,一個pipe<T>有一個固定大小的緩沖區(qū),通過read()和write()方法可以獲取到pipe_reader<T>和pipe_writer<T>以供管道兩端讀寫,任何一端都可以關閉pipe,此時另一端將得到通知。

    pipe,pipe_reader,pipe_writer對象都只能移動而不能被拷貝,為了實現(xiàn)拷貝語義可以使用shared_ptr<T>包裝它們。

    自己寫的一個生產(chǎn)者消費者例子:

    seastar::future<> f() {return seastar::async([] {seastar::pipe<int> p(1);when_all(repeat([&p] {return p.reader.read().then([](std::optional<int> op) {if (op) {std::cout << "read " << op.value() << std::endl;return stop_iteration::no;} else {std::cout << "pipe closed." << std::endl;return stop_iteration::yes;}});}),keep_doing([&p] {return p.writer.write(1).then([] {std::cout << "write succeed." << std::endl;});})).get();}).discard_result(); }

    Shutting down a service with a gate

    考慮一個長操作slow(),任何時刻都有可能啟動這種操作,甚至可能目前有一些slow()操作在并行運行,你想要關閉這個服務,同時想確保在關閉服務前等待所有正在進行的slow()操作全部完成,并且期間你不希望新的slow()操作被啟動。

    這就是seastar::gate的用途,一個gate對象g會維護一個內部計數(shù)器,我們可以在進入一個操作時調用g.enter()并在退出一個操作時調用g.leave()。g.close()會關閉該gate(并返回一個future),這意味著新的g.enter()將不被允許,但是g.leave()仍可進行。這就實現(xiàn)了調用close()后只能結束已有的操作而不能開啟新的操作;當所有正在進行的操作完成時(即內部計數(shù)器降為0時)close()返回的future處于就緒態(tài)。

    為了應對一個slow()長操作很久才停止的情況,slow()可以主動在內部調用g.check()來檢查g.close()是否已經(jīng)被調用,如果gate已被關閉那么g.check()將拋出一個異常,從而停止當前的slow()操作。

    Introducing Seastar’s network stack

    Seastar的網(wǎng)絡棧是分片的,每個shard(thread)都負責一部分連接,一旦一個連接建立,那么它將只會被一個線程處理。

    如我們所見,main()只會在第一個線程上運行一次我們的主體函數(shù)一次,如果需要在指定核心上運行一個函數(shù),那么需要使用smp::submit_to函數(shù):

    seastar::future<> service_loop();seastar::future<> f() { return seastar::parallel_for_each(boost::irange<unsigned>(0, seastar::smp::count), [] (unsigned c) { return seastar::smp::submit_to(c, service_loop); });}

    下面是一個簡單的tcp服務器:

    seastar::future<> service_loop() { return seastar::do_with(seastar::listen(seastar::make_ipv4_address({1234})), // 創(chuàng)建了server_socket對象即listener [] (auto& listener) { return seastar::keep_doing([&listener] () { return listener.accept().then( // accept()返回future<accept_result>對象 [] (seastar::accept_result res) { std::cout << "Accepted connection from " << res.remote_address << "\n"; }); }); });}

    如果要避免重啟server時出現(xiàn)Address already in use問題,可以打開SO_REUSEADDR選項:

    seastar::listen_options lo;lo.reuse_address = true;return seastar::do_with(seastar::listen(seastar::make_ipv4_address({1234}), lo)),// ...

    下面是一個高級一些的tcp server:

    seastar::future<> handle_connection(seastar::connected_socket s, seastar::socket_address a) { auto out = s.output(); auto in = s.input(); return do_with(std::move(s), std::move(out), std::move(in), [] (auto& s, auto& out, auto& in) { return seastar::repeat([&out, &in] { return in.read().then([&out] (auto buf) { if (buf) { return out.write(std::move(buf)).then([&out] { return out.flush(); }).then([] { return seastar::stop_iteration::no; }); } else { return seastar::make_ready_future<seastar::stop_iteration>( seastar::stop_iteration::yes); } }); }).then([&out] { return out.close(); }); });}seastar::future<> service_loop_3() { seastar::listen_options lo; lo.reuse_address = true; return seastar::do_with(seastar::listen(seastar::make_ipv4_address({1234}), lo), [] (auto& listener) { // keep_doing等待future就緒后開始下一輪迭代,故如果下面return handle_connection()那么將在一條連接關閉后才能開始下一次accept() // 這里直接調用handle_connection(),故可以并行接受多條連接而不需要等待前一條連接完成。 return seastar::keep_doing([&listener] () { return listener.accept().then( [] (seastar::accept_result res) { // Note we ignore, not return, the future returned by // handle_connection(), so we do not wait for one // connection to be handled before accepting the next one. (void)handle_connection(std::move(res.connection), std::move(res.remote_address)).handle_exception( [] (std::exception_ptr ep) { fmt::print(stderr, "Could not handle connection: {}\n", ep); }); }); }); });}

    s.output()會返回一個output_stream<char>對象,對該對象調用write()方法會得到一個在數(shù)據(jù)轉移到TCP緩沖區(qū)后就緒的future。

    s.input()會返回一個input_stream<char>對象,對該對象調用read()方法會得到一個temporary_buffer<char>對象,該對象的行為類似unique_ptr<char>,但是有更靈活的內存管理方法(例如share);當一條連接結束時,read()方法返回一個空的temporary_buffer<char>對象。

    代碼中通過忽略handle_connection返回的future實現(xiàn)了并發(fā)accept + handle連接,但要記得用handle_exception處理異常(例如向已關閉的客戶端寫數(shù)據(jù))。

    Sharded services

    我們看到seastar::smp::submit_to能夠讓一個任務在多個核心上運行,但如果我們還想要有一個對象能夠保存任務的狀態(tài),另外核心之間應該能夠交互,并且能夠停止運行在不同核心上的任務。

    Seastar提供了seastar::sharded<>模板來創(chuàng)建這種shareded service,例如:

    class my_service {public: std::string _str; my_service(const std::string& str) : _str(str) { } seastar::future<> run() { std::cerr << "running on " << seastar::engine().cpu_id() << ", _str = " << _str << "\n"; return seastar::make_ready_future<>(); } seastar::future<> stop() { return seastar::make_ready_future<>(); }};seastar::sharded<my_service> s;seastar::future<> f() { return s.start(std::string("hello")).then([] { return s.invoke_on_all([] (my_service& local_service) { return local_service.run(); }); }).then([] { return s.stop(); });}

    用戶需要自己定義一個類來保存狀態(tài),sharded<T>對象的start方法會把指定參數(shù)傳遞給該用戶自定義類的構造函數(shù)。

    要運行任務,則需要使用s.invoke_on_all方法;要停止所有服務,則需要使用s.stop方法。

    要實現(xiàn)sharded service之間的交互,可以使用s.invoke_on方法實現(xiàn)在指定shard上運行任務:

    seastar::sharded<my_service> s;...return s.invoke_on(0, [](my_service& local_service) { std::cerr << "invoked on " << seastar::engine().cpu_id() << ", _str = " << local_service._str << "\n";})

    Command line options

    Debugging a Seastar program

    Promise objects

    一個異步函數(shù)也被稱為一個promise,它會返回一個future并且負責(在事件完成后)令future處于就緒態(tài)。

    編寫promises的基本構件塊是promise<T>對象,它有future<T> get_future()方法可以返回一個future,有set_value(T)方法可以resolve這個future(令future就緒)。典型的異步函數(shù)實現(xiàn)會創(chuàng)建一個promise<T>對象,然后返回它的future,并且最終調用set_value(T)方法。

    其實這和C++11中的future和promise的語義相同,實現(xiàn)了一種異步通知手段。

    Memory allocation in Seastar

    Per-thread memory allocation

    Seastar要求應用程序是分片的,也就是說不同線程應該操作不同內存中的對象。Seastar靜態(tài)地為每個線程分配大致相等的內存。

    如果機器使用了NUMA,那么Seastar也會考慮到某些內存離某些核更近這一事實來劃分內存。

    為了實現(xiàn)在每個線程上獨自分配內存,Seastar重新定義了包括malloc(),free()在內的許多分配函數(shù),也重新定義了C++中的operator new,operator delete及它們的變體。

    雖然可以,但是Sestar不建議一個線程去訪問其他線程的內存,這會帶來巨大的同步開銷。我們應該使用消息傳遞機制(例如submit_to())來實現(xiàn)線程間的交互。

    Foreign pointers

    對象應該在創(chuàng)建它的線程中被銷毀,Seastar也支持在其他線程中銷毀,這是為了支持一些不受Seastar控制的庫代碼(例如std::exception_ptr),但是這種跨線程的對象銷毀過程會是低效的。

    另外有的時候我們想要將一個對象的所有權轉移給另一個線程,那么我們可以使用seastar::foreign_ptr<P>(P是一個指針或者智能指針)包裝對象,然后使用submit_to方法傳遞給其他的線程。

    經(jīng)典用法是seastar::foreign_ptr<std::unique_ptr<T>>,對象將始終被一個線程獨占,當接受該對象的線程銷毀這個foreign_ptr時,它將返回到原來的線程去銷毀std::unique_ptr<T>對象,T對象的析構函數(shù)也將在原始線程中被調用(故析構函數(shù)中可以訪問原始線程的數(shù)據(jù)結構)。

    盡管foreign_ptr把對象傳遞給了另一個線程,但在接收線程中只能調用簡單的方法(例如只讀方法 ),對于那些需要訪問原始線程數(shù)據(jù)的方法,接收線程無法直接調用,而應該使用如下模式讓原始線程來調用這些方法:

    // fp is some foreign_ptr<>return smp::submit_to(fp.get_owner_shard(), [p=fp.get()] { return p->some_method(); });

    有時候我們希望不移動所有權,而是讓其他線程共享使用一個對象(回到了共享內存架構),那么我們可以使用 seastar::foreign_ptr<stastar::lw_shared_ptr<T>>,用戶需要自己處理可能發(fā)生的數(shù)據(jù)競爭(可能還要使用submit_to)。

    Seastar::thread

    雖然futures和continuations模型很強大且有效率,但是編碼實在不如同步方法簡單,所以Seastar提供了seastar::thread來讓你可以編寫同步代碼。

    一個seastar::thread可以提供一個執(zhí)行上下文,你可以在其中阻塞式編碼:調用異步函數(shù)然后等待(而不是接著調用then())。

    要注意seastar::thread并不是操作系統(tǒng)線程,它仍然使用continuations,這是由Seastar的(每個核心上的)單線程調度的。工作原理如下:

    • 每個seastar::thread會分配一個128KB的棧,然后由所屬線程運行thread中的任務(在thread上下文環(huán)境中),當任務中調用一個future的get()(或wait()等)方法時,如果future未就緒,那么當前線程將會保存上下文到seastar::thread的棧中并為future安排一個continuation(內容是使用seastar::thread的上下文棧繼續(xù)執(zhí)行后面的代碼)。
    • seastar::thread是協(xié)作式的,只有seastar::future::get()阻塞或者seastar::thread::yield()被調用時才會讓出線程,如果調用了阻塞的系統(tǒng)調用(比如::sleep()),那么線程仍將阻塞而無法實現(xiàn)異步。

    猜測seastar::thread是通過在future::get()檢查當前執(zhí)行環(huán)境然后直接返回還是添加continuation來實現(xiàn)同步變異步的。

    另外,事實上不能在普通線程中直接調用future::get來等待事件完成(除非future已就緒)否則會assert失敗。而在seastar::thread中調用future::get永遠不會報錯。

    這是因為get()中調用的wait()函數(shù)只能在seastar::thread()中調用:

    /// Wait for the future to be available (in a seastar::thread)// When called from a seastar::thread, this function blocks the/// thread until the future is availble. Other threads and/// continuations continue to execute; only the thread is blocked.void wait() noexcept { if (_state.available()) { return; } do_wait();}void internal::future_base::do_wait() noexcept { auto thread = thread_impl::get(); assert(thread); // 如果不是在 seastar::thread 中將assert失敗! thread_wake_task wake_task{thread}; wake_task.make_backtrace(); _promise->_task = &wake_task; thread_impl::switch_out(thread);}

    Starting and ending a seastar::thread

    創(chuàng)建一個seastar::thread 對象后,可以使用join()方法來等待它結束,一個例子是:

    seastar::future<> f() { seastar::thread th([] { std::cout << "Hi.\n"; for (int i = 1; i < 4; i++) { seastar::sleep(std::chrono::seconds(1)).get(); std::cout << i << "\n"; } }); return do_with(std::move(th), [] (auto& th) { return th.join(); });}

    seastar::async簡化了這件事,它返回一個當seastar::thread結束時就緒的future:

    seastar::future<> f() { return seastar::async([] { std::cout << "Hi.\n"; for (int i = 1; i < 4; i++) { seastar::sleep(std::chrono::seconds(1)).get(); std::cout << i << "\n"; } });}

    seastar::async中的lambda也可以返回一個值,這個值將被future<T>包裝:

    seastar::future<seastar::sstring> read_file(sstring file_name) { return seastar::async([file_name] () { // lambda executed in a thread file f = seastar::open_file_dma(file_name).get0(); // get0() call "blocks" auto buf = f.dma_read(0, 512).get0(); // "block" again return seastar::sstring(buf.get(), buf.size()); });};

    Isolation of application components

    總結

    以上是生活随笔為你收集整理的Seastar Tutorial 简明教程的全部內容,希望文章能夠幫你解決所遇到的問題。

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

    国产 精品 自在自线 | 激情内射亚州一区二区三区爱妻 | 又色又爽又黄的美女裸体网站 | 乱人伦人妻中文字幕无码 | 熟妇人妻中文av无码 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 久久人人97超碰a片精品 | 成人亚洲精品久久久久软件 | 丰满诱人的人妻3 | 天天爽夜夜爽夜夜爽 | 久久午夜无码鲁丝片午夜精品 | 午夜无码区在线观看 | 亚洲成色www久久网站 | 国产特级毛片aaaaaa高潮流水 | 日本va欧美va欧美va精品 | 中文字幕人妻无码一夲道 | 中文字幕+乱码+中文字幕一区 | 亚洲男人av香蕉爽爽爽爽 | 88国产精品欧美一区二区三区 | 亚洲欧美中文字幕5发布 | 国产尤物精品视频 | 性色欲情网站iwww九文堂 | 无码国模国产在线观看 | 精品无码国产自产拍在线观看蜜 | 成人免费视频一区二区 | 亚洲乱码国产乱码精品精 | 国产人妻人伦精品1国产丝袜 | 中文字幕色婷婷在线视频 | 又色又爽又黄的美女裸体网站 | 国产乱人伦偷精品视频 | 午夜性刺激在线视频免费 | 亚洲精品一区二区三区在线观看 | 日日碰狠狠躁久久躁蜜桃 | 欧美日韩一区二区免费视频 | 高中生自慰www网站 | 亚洲色大成网站www国产 | 成人av无码一区二区三区 | 欧美国产亚洲日韩在线二区 | 捆绑白丝粉色jk震动捧喷白浆 | 成人动漫在线观看 | 成在人线av无码免观看麻豆 | 奇米影视7777久久精品人人爽 | 国产高潮视频在线观看 | 日韩欧美群交p片內射中文 | 亚洲成av人片天堂网无码】 | 呦交小u女精品视频 | 国产亚洲精品久久久ai换 | 成人免费视频视频在线观看 免费 | 对白脏话肉麻粗话av | 女人被爽到呻吟gif动态图视看 | 蜜臀av无码人妻精品 | 熟妇人妻无码xxx视频 | 国产黄在线观看免费观看不卡 | 自拍偷自拍亚洲精品10p | 中文字幕无码免费久久99 | 国产免费无码一区二区视频 | 又色又爽又黄的美女裸体网站 | 十八禁视频网站在线观看 | 中文字幕无线码 | 呦交小u女精品视频 | 性欧美videos高清精品 | 18禁止看的免费污网站 | 亚洲综合另类小说色区 | 熟妇女人妻丰满少妇中文字幕 | 99麻豆久久久国产精品免费 | 日韩精品久久久肉伦网站 | 99久久无码一区人妻 | 国产精华av午夜在线观看 | 国产精品香蕉在线观看 | 国产国语老龄妇女a片 | 精品一区二区三区波多野结衣 | 99精品无人区乱码1区2区3区 | 女人被男人躁得好爽免费视频 | 日日天日日夜日日摸 | 奇米影视7777久久精品人人爽 | 日本一区二区三区免费播放 | 国产av无码专区亚洲awww | 日本肉体xxxx裸交 | 久久久久av无码免费网 | 国产猛烈高潮尖叫视频免费 | a国产一区二区免费入口 | 欧美日韩在线亚洲综合国产人 | 精品偷拍一区二区三区在线看 | 久久精品国产日本波多野结衣 | 亚洲小说图区综合在线 | 97久久国产亚洲精品超碰热 | 欧美三级不卡在线观看 | 日韩 欧美 动漫 国产 制服 | 玩弄人妻少妇500系列视频 | 国内老熟妇对白xxxxhd | 少妇无码一区二区二三区 | 一本色道婷婷久久欧美 | 成人欧美一区二区三区黑人免费 | 日日碰狠狠丁香久燥 | 亚洲国产精品美女久久久久 | 欧美猛少妇色xxxxx | 日韩精品乱码av一区二区 | 亚洲精品一区三区三区在线观看 | 亚洲欧洲日本综合aⅴ在线 | 亚洲日韩av片在线观看 | 日本爽爽爽爽爽爽在线观看免 | 国产精品-区区久久久狼 | 日韩av无码一区二区三区不卡 | 老熟妇乱子伦牲交视频 | 国产成人精品久久亚洲高清不卡 | 国产免费无码一区二区视频 | 中文字幕无码日韩欧毛 | 久久亚洲精品成人无码 | 天堂无码人妻精品一区二区三区 | 天天摸天天透天天添 | 少妇邻居内射在线 | 成人精品一区二区三区中文字幕 | 亚洲综合在线一区二区三区 | 一个人看的视频www在线 | 高潮喷水的毛片 | 日韩精品a片一区二区三区妖精 | 国产精品va在线观看无码 | 天堂久久天堂av色综合 | 久久亚洲a片com人成 | 中文字幕乱码中文乱码51精品 | 日韩精品乱码av一区二区 | 男女下面进入的视频免费午夜 | а√天堂www在线天堂小说 | 久久 国产 尿 小便 嘘嘘 | 99久久婷婷国产综合精品青草免费 | 欧美丰满熟妇xxxx | 国模大胆一区二区三区 | 亚洲精品午夜国产va久久成人 | 国产激情一区二区三区 | 精品久久久久久人妻无码中文字幕 | 亚洲欧洲无卡二区视頻 | 国产人妻人伦精品1国产丝袜 | 国产精品成人av在线观看 | 国产成人精品久久亚洲高清不卡 | 欧美精品无码一区二区三区 | 亚洲乱亚洲乱妇50p | 黑人粗大猛烈进出高潮视频 | 99精品久久毛片a片 | 九九在线中文字幕无码 | 少妇厨房愉情理9仑片视频 | 亚洲精品综合五月久久小说 | 欧美freesex黑人又粗又大 | 无码播放一区二区三区 | 国内精品人妻无码久久久影院 | 一个人看的www免费视频在线观看 | 亚洲爆乳精品无码一区二区三区 | 日日干夜夜干 | 亚洲 激情 小说 另类 欧美 | 成人欧美一区二区三区黑人免费 | 亚洲成a人片在线观看日本 | 亚洲人成影院在线无码按摩店 | 国产成人综合在线女婷五月99播放 | 999久久久国产精品消防器材 | 亚洲成av人影院在线观看 | 成人无码精品一区二区三区 | 丰满少妇熟乱xxxxx视频 | 天下第一社区视频www日本 | 久9re热视频这里只有精品 | 精品国产成人一区二区三区 | 暴力强奷在线播放无码 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 99re在线播放 | 亚洲国产高清在线观看视频 | 少妇愉情理伦片bd | 亚洲国产欧美在线成人 | 任你躁国产自任一区二区三区 | 久久www免费人成人片 | 国产av剧情md精品麻豆 | 亚洲一区二区观看播放 | 5858s亚洲色大成网站www | 欧美国产日韩亚洲中文 | 亚洲天堂2017无码中文 | 日韩人妻系列无码专区 | 色综合久久久无码中文字幕 | 精品一区二区三区波多野结衣 | 十八禁视频网站在线观看 | 国产人妻人伦精品1国产丝袜 | 天堂一区人妻无码 | 亚洲国产av精品一区二区蜜芽 | 7777奇米四色成人眼影 | 精品人妻人人做人人爽 | 久久人人97超碰a片精品 | 少妇被粗大的猛进出69影院 | 国产午夜亚洲精品不卡 | 久久精品国产精品国产精品污 | 无码精品人妻一区二区三区av | 无码吃奶揉捏奶头高潮视频 | 国语自产偷拍精品视频偷 | 日日噜噜噜噜夜夜爽亚洲精品 | 最近免费中文字幕中文高清百度 | 秋霞成人午夜鲁丝一区二区三区 | 亚洲 激情 小说 另类 欧美 | 日韩精品无码一本二本三本色 | 丝袜人妻一区二区三区 | 在线观看免费人成视频 | 久久99精品久久久久婷婷 | 国产精品亚洲一区二区三区喷水 | 国产精品高潮呻吟av久久 | 免费国产黄网站在线观看 | 欧美国产日韩亚洲中文 | 亚洲综合伊人久久大杳蕉 | 国产av剧情md精品麻豆 | 国产尤物精品视频 | 国内精品人妻无码久久久影院 | 色婷婷综合中文久久一本 | 51国偷自产一区二区三区 | 在线播放免费人成毛片乱码 | 国产做国产爱免费视频 | 亚洲男女内射在线播放 | 国产精品久久国产精品99 | 人人超人人超碰超国产 | 天天躁日日躁狠狠躁免费麻豆 | 丝袜人妻一区二区三区 | 少妇人妻偷人精品无码视频 | 亚洲无人区午夜福利码高清完整版 | 国产精品亚洲а∨无码播放麻豆 | 十八禁真人啪啪免费网站 | 国产又爽又猛又粗的视频a片 | 国产精品办公室沙发 | 国产精品丝袜黑色高跟鞋 | 波多野结衣aⅴ在线 | 中文字幕色婷婷在线视频 | 欧美人与善在线com | 男女爱爱好爽视频免费看 | 国产成人无码a区在线观看视频app | 亚洲精品美女久久久久久久 | 精品国产aⅴ无码一区二区 | 亚洲精品一区国产 | 疯狂三人交性欧美 | 国内揄拍国内精品少妇国语 | 色偷偷人人澡人人爽人人模 | 国产偷自视频区视频 | 四虎国产精品免费久久 | 76少妇精品导航 | 久久zyz资源站无码中文动漫 | 欧美日韩视频无码一区二区三 | 亚洲 日韩 欧美 成人 在线观看 | 亚洲一区二区三区偷拍女厕 | 少妇激情av一区二区 | 亚洲成色在线综合网站 | 狠狠色噜噜狠狠狠7777奇米 | 丰满诱人的人妻3 | 国产精品香蕉在线观看 | 7777奇米四色成人眼影 | 日本成熟视频免费视频 | 亚洲国产精品久久久久久 | 久久综合九色综合97网 | 日本一本二本三区免费 | 无码国内精品人妻少妇 | 欧美丰满熟妇xxxx性ppx人交 | 欧美精品在线观看 | 人妻夜夜爽天天爽三区 | 久久99精品国产.久久久久 | 日韩少妇内射免费播放 | 奇米影视7777久久精品人人爽 | 性生交大片免费看女人按摩摩 | 久久精品人妻少妇一区二区三区 | 麻豆果冻传媒2021精品传媒一区下载 | 久久亚洲中文字幕精品一区 | 亚洲阿v天堂在线 | 国产精品无码成人午夜电影 | 一区二区三区乱码在线 | 欧洲 | 天海翼激烈高潮到腰振不止 | 四虎影视成人永久免费观看视频 | 国产精品香蕉在线观看 | 亚洲国产精华液网站w | 精品 日韩 国产 欧美 视频 | 精品人人妻人人澡人人爽人人 | 风流少妇按摩来高潮 | 国产综合色产在线精品 | 国产精品99久久精品爆乳 | 动漫av网站免费观看 | 香蕉久久久久久av成人 | 黑人玩弄人妻中文在线 | 荫蒂被男人添的好舒服爽免费视频 | 牲交欧美兽交欧美 | 激情爆乳一区二区三区 | 美女极度色诱视频国产 | 东京热无码av男人的天堂 | 日日夜夜撸啊撸 | 亚洲热妇无码av在线播放 | 欧美熟妇另类久久久久久不卡 | 亚洲午夜久久久影院 | 蜜臀av无码人妻精品 | 亚洲日韩乱码中文无码蜜桃臀网站 | 扒开双腿疯狂进出爽爽爽视频 | 性色欲网站人妻丰满中文久久不卡 | 国产成人无码a区在线观看视频app | 色诱久久久久综合网ywww | 无码乱肉视频免费大全合集 | 蜜桃臀无码内射一区二区三区 | 色综合久久久无码网中文 | 男女作爱免费网站 | 97久久国产亚洲精品超碰热 | 天干天干啦夜天干天2017 | 领导边摸边吃奶边做爽在线观看 | 正在播放东北夫妻内射 | 国产精品久免费的黄网站 | 伦伦影院午夜理论片 | 国产一区二区不卡老阿姨 | 性色欲网站人妻丰满中文久久不卡 | 亚洲国产精品无码久久久久高潮 | 永久免费观看美女裸体的网站 | 亚洲乱码国产乱码精品精 | 人人妻人人澡人人爽欧美一区 | 久久99久久99精品中文字幕 | 日本熟妇乱子伦xxxx | 国产suv精品一区二区五 | 波多野结衣高清一区二区三区 | 好爽又高潮了毛片免费下载 | 亚洲 欧美 激情 小说 另类 | 双乳奶水饱满少妇呻吟 | 久久无码专区国产精品s | 亚洲精品国产第一综合99久久 | 精品亚洲韩国一区二区三区 | 牲欲强的熟妇农村老妇女视频 | 帮老师解开蕾丝奶罩吸乳网站 | 女人被男人躁得好爽免费视频 | 西西人体www44rt大胆高清 | 成 人影片 免费观看 | 久久久久亚洲精品男人的天堂 | 十八禁真人啪啪免费网站 | 午夜福利试看120秒体验区 | 久久久精品欧美一区二区免费 | 久青草影院在线观看国产 | 亚洲自偷自拍另类第1页 | 国内老熟妇对白xxxxhd | 国产莉萝无码av在线播放 | 中文毛片无遮挡高清免费 | 99久久久国产精品无码免费 | 亚洲国产精品毛片av不卡在线 | 国产亚洲精品久久久久久大师 | 国产精品人人妻人人爽 | 国内少妇偷人精品视频 | 亚洲国产精品美女久久久久 | 曰韩无码二三区中文字幕 | 久久久www成人免费毛片 | 国精产品一区二区三区 | 亚洲中文字幕av在天堂 | 成人免费无码大片a毛片 | 久久久中文久久久无码 | 国产高清av在线播放 | 日日摸天天摸爽爽狠狠97 | 日本肉体xxxx裸交 | 领导边摸边吃奶边做爽在线观看 | 久久久久亚洲精品男人的天堂 | 久久99国产综合精品 | 久久zyz资源站无码中文动漫 | 亚欧洲精品在线视频免费观看 | 日本www一道久久久免费榴莲 | 久久国语露脸国产精品电影 | 亚拍精品一区二区三区探花 | 精品成在人线av无码免费看 | 亚洲中文字幕乱码av波多ji | 国产人妻人伦精品 | 在线 国产 欧美 亚洲 天堂 | 97色伦图片97综合影院 | 亚洲阿v天堂在线 | 国产97在线 | 亚洲 | 老司机亚洲精品影院 | 日本一区二区更新不卡 | 国产手机在线αⅴ片无码观看 | 人人澡人人透人人爽 | 亚洲中文字幕在线无码一区二区 | 蜜桃av抽搐高潮一区二区 | 美女黄网站人色视频免费国产 | 亚洲国产一区二区三区在线观看 | 亚洲精品综合五月久久小说 | 夜夜高潮次次欢爽av女 | 美女极度色诱视频国产 | 99久久人妻精品免费一区 | 亚洲男人av香蕉爽爽爽爽 | 亚洲人成网站色7799 | 未满小14洗澡无码视频网站 | 天堂а√在线地址中文在线 | 日本又色又爽又黄的a片18禁 | 无码一区二区三区在线观看 | 久久 国产 尿 小便 嘘嘘 | 国产亚洲精品久久久久久久久动漫 | 日本丰满护士爆乳xxxx | 2020久久香蕉国产线看观看 | 久久午夜夜伦鲁鲁片无码免费 | 精品国偷自产在线视频 | 曰韩无码二三区中文字幕 | 亚洲性无码av中文字幕 | 欧美 丝袜 自拍 制服 另类 | 国产亚洲欧美在线专区 | 国产精品久久久久久亚洲毛片 | 内射老妇bbwx0c0ck | 精品人妻av区 | 狠狠亚洲超碰狼人久久 | 伊人久久婷婷五月综合97色 | 亚洲大尺度无码无码专区 | 无码精品国产va在线观看dvd | 国产无遮挡又黄又爽免费视频 | 国产精品沙发午睡系列 | 撕开奶罩揉吮奶头视频 | www国产亚洲精品久久久日本 | 免费看少妇作爱视频 | 亚洲小说图区综合在线 | 日本www一道久久久免费榴莲 | 久久精品中文字幕一区 | 日本饥渴人妻欲求不满 | 中文字幕无码av波多野吉衣 | 日日天日日夜日日摸 | 久久国内精品自在自线 | 日韩精品成人一区二区三区 | 少妇性俱乐部纵欲狂欢电影 | 网友自拍区视频精品 | 我要看www免费看插插视频 | 99精品视频在线观看免费 | 色欲av亚洲一区无码少妇 | 国产精品对白交换视频 | 99久久精品日本一区二区免费 | 久久 国产 尿 小便 嘘嘘 | 亚洲乱码中文字幕在线 | 久久人妻内射无码一区三区 | 亚洲色欲色欲欲www在线 | 97资源共享在线视频 | 中文字幕乱码中文乱码51精品 | 欧美国产亚洲日韩在线二区 | 日韩少妇白浆无码系列 | 欧美阿v高清资源不卡在线播放 | 色偷偷人人澡人人爽人人模 | 7777奇米四色成人眼影 | 99久久亚洲精品无码毛片 | 人妻aⅴ无码一区二区三区 | 粗大的内捧猛烈进出视频 | 日本熟妇大屁股人妻 | 成人欧美一区二区三区黑人 | 久久久久99精品国产片 | 欧美性黑人极品hd | 国精品人妻无码一区二区三区蜜柚 | 乱人伦人妻中文字幕无码 | 色一情一乱一伦 | 精品 日韩 国产 欧美 视频 | 高清国产亚洲精品自在久久 | 小sao货水好多真紧h无码视频 | 国产熟女一区二区三区四区五区 | 久久久久久国产精品无码下载 | 青草视频在线播放 | 中文字幕乱码人妻二区三区 | 国产sm调教视频在线观看 | 国产精品无码永久免费888 | 中文字幕无码日韩欧毛 | 高潮毛片无遮挡高清免费视频 | 国产综合在线观看 | 乌克兰少妇性做爰 | 日韩欧美中文字幕公布 | 精品日本一区二区三区在线观看 | 强奷人妻日本中文字幕 | 久久国产自偷自偷免费一区调 | 日日噜噜噜噜夜夜爽亚洲精品 | 国产色视频一区二区三区 | 欧美 丝袜 自拍 制服 另类 | 99久久无码一区人妻 | 疯狂三人交性欧美 | 高清无码午夜福利视频 | 日韩精品一区二区av在线 | 国产亚洲精品久久久ai换 | 红桃av一区二区三区在线无码av | 亚洲精品一区二区三区大桥未久 | 大胆欧美熟妇xx | 在线欧美精品一区二区三区 | 亚洲熟女一区二区三区 | 丝袜 中出 制服 人妻 美腿 | 婷婷六月久久综合丁香 | 欧美成人家庭影院 | 一区二区三区乱码在线 | 欧洲 | 久久无码中文字幕免费影院蜜桃 | 国产一区二区三区精品视频 | 久久精品人人做人人综合试看 | 骚片av蜜桃精品一区 | 亚洲 高清 成人 动漫 | 一本久道久久综合婷婷五月 | 精品国产国产综合精品 | 狠狠色噜噜狠狠狠7777奇米 | 天天做天天爱天天爽综合网 | 国产成人精品无码播放 | 人妻插b视频一区二区三区 | 无码人妻av免费一区二区三区 | 久久久婷婷五月亚洲97号色 | 狠狠色噜噜狠狠狠7777奇米 | 男人的天堂2018无码 | 国产在线一区二区三区四区五区 | 一本久道久久综合婷婷五月 | 综合激情五月综合激情五月激情1 | 最新国产乱人伦偷精品免费网站 | 精品一二三区久久aaa片 | 国产艳妇av在线观看果冻传媒 | 免费看少妇作爱视频 | 婷婷丁香五月天综合东京热 | 亚洲成色www久久网站 | 久久久av男人的天堂 | 强奷人妻日本中文字幕 | 天天摸天天透天天添 | 国产成人无码一二三区视频 | av无码久久久久不卡免费网站 | 嫩b人妻精品一区二区三区 | 日日夜夜撸啊撸 | 免费中文字幕日韩欧美 | 亚洲国产午夜精品理论片 | 久久久久久av无码免费看大片 | 欧美精品无码一区二区三区 | 欧美 亚洲 国产 另类 | 免费无码午夜福利片69 | 日韩欧美中文字幕公布 | 国产特级毛片aaaaaa高潮流水 | 2020久久超碰国产精品最新 | 婷婷综合久久中文字幕蜜桃三电影 | 国产精品久久久av久久久 | 无码一区二区三区在线 | 国产精品亚洲五月天高清 | 色综合久久久无码中文字幕 | 欧美亚洲日韩国产人成在线播放 | 国产麻豆精品精东影业av网站 | 国产精品福利视频导航 | 亚洲第一无码av无码专区 | 熟妇人妻无乱码中文字幕 | 中文字幕日韩精品一区二区三区 | 中文字幕无码日韩欧毛 | 久久久久久久久蜜桃 | 一本加勒比波多野结衣 | 国产偷国产偷精品高清尤物 | 女人被爽到呻吟gif动态图视看 | 天天摸天天透天天添 | 久久精品国产日本波多野结衣 | 亚洲国产av精品一区二区蜜芽 | 日本一卡二卡不卡视频查询 | 午夜无码人妻av大片色欲 | 国产两女互慰高潮视频在线观看 | 亚洲娇小与黑人巨大交 | 国产精品久久久久无码av色戒 | 成人欧美一区二区三区黑人 | 亚洲啪av永久无码精品放毛片 | 亚洲中文字幕无码中字 | 日本丰满熟妇videos | 夫妻免费无码v看片 | 久久人妻内射无码一区三区 | av在线亚洲欧洲日产一区二区 | 久久综合狠狠综合久久综合88 | 久久精品女人天堂av免费观看 | 性啪啪chinese东北女人 | 欧美激情综合亚洲一二区 | 一本色道久久综合亚洲精品不卡 | 老熟妇乱子伦牲交视频 | 97精品人妻一区二区三区香蕉 | 国产精品美女久久久 | 麻豆国产人妻欲求不满谁演的 | 国产免费观看黄av片 | 亚洲色成人中文字幕网站 | 亚洲精品一区二区三区大桥未久 | 黑人大群体交免费视频 | 18禁黄网站男男禁片免费观看 | 色婷婷久久一区二区三区麻豆 | 六月丁香婷婷色狠狠久久 | 黑人大群体交免费视频 | 久久精品女人的天堂av | 国产成人精品一区二区在线小狼 | 97人妻精品一区二区三区 | 国产乡下妇女做爰 | 久久久久国色av免费观看性色 | 精品日本一区二区三区在线观看 | 国产一区二区三区日韩精品 | 婷婷丁香六月激情综合啪 | 亚洲精品鲁一鲁一区二区三区 | 亚洲熟悉妇女xxx妇女av | 欧美成人免费全部网站 | 日本一区二区三区免费高清 | 国产热a欧美热a在线视频 | 老司机亚洲精品影院 | 狠狠综合久久久久综合网 | 亚无码乱人伦一区二区 | 国产人妻久久精品二区三区老狼 | 2020最新国产自产精品 | 国产精品多人p群无码 | 乌克兰少妇性做爰 | 熟妇人妻无乱码中文字幕 | 扒开双腿疯狂进出爽爽爽视频 | 亚洲综合无码一区二区三区 | 在线а√天堂中文官网 | 日本精品久久久久中文字幕 | 99久久久国产精品无码免费 | 亚洲一区二区三区无码久久 | 中文无码精品a∨在线观看不卡 | 国产9 9在线 | 中文 | 狠狠色噜噜狠狠狠狠7777米奇 | 午夜男女很黄的视频 | aa片在线观看视频在线播放 | 奇米影视7777久久精品人人爽 | 国产另类ts人妖一区二区 | 色狠狠av一区二区三区 | 国产精品丝袜黑色高跟鞋 | 国产精品久久久 | 久久午夜无码鲁丝片午夜精品 | 欧美人与动性行为视频 | 欧美熟妇另类久久久久久多毛 | 国产精品99爱免费视频 | 国产成人av免费观看 | 1000部啪啪未满十八勿入下载 | 男女猛烈xx00免费视频试看 | 高中生自慰www网站 | 小sao货水好多真紧h无码视频 | 精品偷拍一区二区三区在线看 | 综合激情五月综合激情五月激情1 | 国内少妇偷人精品视频 | 亚洲性无码av中文字幕 | 色一情一乱一伦一区二区三欧美 | 亚洲 日韩 欧美 成人 在线观看 | 精品国产国产综合精品 | 国产无遮挡又黄又爽免费视频 | 国产熟妇高潮叫床视频播放 | 国产精品无码久久av | 亚欧洲精品在线视频免费观看 | 亚洲娇小与黑人巨大交 | 无码国产色欲xxxxx视频 | 麻豆国产97在线 | 欧洲 | 在线播放无码字幕亚洲 | 特黄特色大片免费播放器图片 | 国内揄拍国内精品少妇国语 | 午夜无码人妻av大片色欲 | 久青草影院在线观看国产 | 伊人久久大香线蕉av一区二区 | 无码成人精品区在线观看 | 欧美国产日韩久久mv | 国内精品九九久久久精品 | 久久久久久a亚洲欧洲av冫 | 捆绑白丝粉色jk震动捧喷白浆 | 久久精品成人欧美大片 | 亚洲熟女一区二区三区 | 国产精品亚洲а∨无码播放麻豆 | 波多野42部无码喷潮在线 | 国产suv精品一区二区五 | 麻豆国产97在线 | 欧洲 | 色婷婷综合激情综在线播放 | 永久免费观看国产裸体美女 | 国产精品人人爽人人做我的可爱 | 国产精品成人av在线观看 | 免费观看黄网站 | 久久精品中文闷骚内射 | www一区二区www免费 | 又粗又大又硬毛片免费看 | 四虎永久在线精品免费网址 | 无码人妻丰满熟妇区毛片18 | 国精品人妻无码一区二区三区蜜柚 | 鲁一鲁av2019在线 | 奇米影视7777久久精品 | 国产午夜亚洲精品不卡 | 久久99精品久久久久久 | 中文字幕乱码人妻二区三区 | 精品水蜜桃久久久久久久 | 性欧美videos高清精品 | 夫妻免费无码v看片 | 永久免费观看国产裸体美女 | 天天av天天av天天透 | 国产又粗又硬又大爽黄老大爷视 | 日产精品高潮呻吟av久久 | 性色av无码免费一区二区三区 | 亚洲热妇无码av在线播放 | 欧美熟妇另类久久久久久不卡 | 熟女体下毛毛黑森林 | 亚洲精品国产品国语在线观看 | 激情国产av做激情国产爱 | 国产人妻久久精品二区三区老狼 | 国产精品久久久午夜夜伦鲁鲁 | 中文字幕无线码 | 无码国产激情在线观看 | 亚洲欧美国产精品专区久久 | 理论片87福利理论电影 | 日韩欧美中文字幕公布 | 麻豆人妻少妇精品无码专区 | 99久久99久久免费精品蜜桃 | 无码av免费一区二区三区试看 | 欧美成人免费全部网站 | 牲欲强的熟妇农村老妇女视频 | 扒开双腿吃奶呻吟做受视频 | 日韩无套无码精品 | 欧美国产日产一区二区 | 麻豆蜜桃av蜜臀av色欲av | 国产偷国产偷精品高清尤物 | 亚洲日韩乱码中文无码蜜桃臀网站 | 俺去俺来也www色官网 | 国产明星裸体无码xxxx视频 | 人人妻人人澡人人爽欧美一区九九 | 无码av中文字幕免费放 | 国产亚洲精品久久久久久久久动漫 | 国产精品99爱免费视频 | 人人妻人人澡人人爽人人精品浪潮 | 女人和拘做爰正片视频 | 国产偷国产偷精品高清尤物 | 99精品无人区乱码1区2区3区 | 日本在线高清不卡免费播放 | 欧洲vodafone精品性 | 国产香蕉97碰碰久久人人 | 亚洲区欧美区综合区自拍区 | 午夜不卡av免费 一本久久a久久精品vr综合 | 成熟人妻av无码专区 | 人人爽人人爽人人片av亚洲 | 国产婷婷色一区二区三区在线 | 国产成人精品必看 | 狠狠躁日日躁夜夜躁2020 | 欧美freesex黑人又粗又大 | 伊人久久大香线蕉午夜 | 国产av剧情md精品麻豆 | 性色av无码免费一区二区三区 | av无码不卡在线观看免费 | 久久久久久久久888 | 国产无套粉嫩白浆在线 | 波多野结衣av一区二区全免费观看 | 久久aⅴ免费观看 | 亚拍精品一区二区三区探花 | www国产亚洲精品久久久日本 | 国产亲子乱弄免费视频 | 久久综合网欧美色妞网 | 亚洲国产欧美国产综合一区 | 无码国产色欲xxxxx视频 | 国产在线精品一区二区高清不卡 | 亚洲色偷偷偷综合网 | 狂野欧美性猛交免费视频 | 亚洲人成网站免费播放 | 人妻夜夜爽天天爽三区 | 久热国产vs视频在线观看 | 欧美自拍另类欧美综合图片区 | 国产超碰人人爽人人做人人添 | 亚洲日韩av片在线观看 | 久久久久久久女国产乱让韩 | 久久精品视频在线看15 | 成人免费视频视频在线观看 免费 | 亚洲国产精品毛片av不卡在线 | 国产精品久久精品三级 | 少妇性l交大片 | 日本免费一区二区三区最新 | 亚洲欧美综合区丁香五月小说 | 久久久久成人片免费观看蜜芽 | 亚洲va欧美va天堂v国产综合 | av无码久久久久不卡免费网站 | 一本一道久久综合久久 | 亚洲国产精品一区二区第一页 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 国产xxx69麻豆国语对白 | 国产高潮视频在线观看 | 久久久久久久女国产乱让韩 | 亚洲人成网站在线播放942 | 两性色午夜视频免费播放 | 国产av人人夜夜澡人人爽麻豆 | 帮老师解开蕾丝奶罩吸乳网站 | 乱人伦人妻中文字幕无码 | 亚洲日韩av片在线观看 | 奇米影视888欧美在线观看 | 麻豆蜜桃av蜜臀av色欲av | 在线观看免费人成视频 | 久久精品国产精品国产精品污 | 人人澡人人透人人爽 | www国产亚洲精品久久久日本 | 欧美熟妇另类久久久久久多毛 | 午夜精品久久久久久久久 | 18禁黄网站男男禁片免费观看 | 国产片av国语在线观看 | 一本大道久久东京热无码av | аⅴ资源天堂资源库在线 | 东京热男人av天堂 | 牛和人交xxxx欧美 | 国产在线精品一区二区三区直播 | 久久久久久久久888 | av无码久久久久不卡免费网站 | 欧美阿v高清资源不卡在线播放 | 老熟女重囗味hdxx69 | 亚洲欧美日韩成人高清在线一区 | 人妻无码αv中文字幕久久琪琪布 | 国产无套内射久久久国产 | 国产人妻精品午夜福利免费 | 婷婷五月综合激情中文字幕 | 精品久久久中文字幕人妻 | 国产极品美女高潮无套在线观看 | 日韩少妇内射免费播放 | 美女毛片一区二区三区四区 | 国产亚洲欧美在线专区 | 国产精品对白交换视频 | 久久久精品人妻久久影视 | 精品无码一区二区三区的天堂 | 少妇性俱乐部纵欲狂欢电影 | 日韩亚洲欧美中文高清在线 | 又大又黄又粗又爽的免费视频 | 免费无码午夜福利片69 | 久久久av男人的天堂 | 亚洲大尺度无码无码专区 | 无码国内精品人妻少妇 | av无码久久久久不卡免费网站 | 欧美阿v高清资源不卡在线播放 | 国产精品18久久久久久麻辣 | 日韩av无码一区二区三区不卡 | 亚洲综合色区中文字幕 | 国产内射老熟女aaaa | 人妻夜夜爽天天爽三区 | 在线亚洲高清揄拍自拍一品区 | 日本护士xxxxhd少妇 | 亚洲第一网站男人都懂 | 亚洲男人av天堂午夜在 | 国产一区二区三区精品视频 | 老熟女重囗味hdxx69 | 激情国产av做激情国产爱 | 学生妹亚洲一区二区 | 激情爆乳一区二区三区 | 国产特级毛片aaaaaaa高清 | 国产猛烈高潮尖叫视频免费 | 乱人伦人妻中文字幕无码 | 国产三级久久久精品麻豆三级 | 日韩亚洲欧美中文高清在线 | 无码免费一区二区三区 | 中国女人内谢69xxxx | 午夜丰满少妇性开放视频 | 色婷婷香蕉在线一区二区 | 日本免费一区二区三区最新 | 亚洲 激情 小说 另类 欧美 | 精品一区二区三区无码免费视频 | 久久国产精品偷任你爽任你 | 国产人妻大战黑人第1集 | 亚洲精品午夜国产va久久成人 | 亚洲综合伊人久久大杳蕉 | 巨爆乳无码视频在线观看 | 无码任你躁久久久久久久 | 粉嫩少妇内射浓精videos | 天下第一社区视频www日本 | 色综合天天综合狠狠爱 | 亚洲熟妇色xxxxx欧美老妇 | 亚洲毛片av日韩av无码 | 亚洲中文字幕在线无码一区二区 | 青青青爽视频在线观看 | 国产精品久久精品三级 | 女人被男人爽到呻吟的视频 | 亚洲精品久久久久中文第一幕 | 红桃av一区二区三区在线无码av | 欧美人与禽猛交狂配 | 日日躁夜夜躁狠狠躁 | 国产三级久久久精品麻豆三级 | 久久久久久久女国产乱让韩 | 国产精品久久久久无码av色戒 | 亚洲无人区一区二区三区 | 人妻有码中文字幕在线 | 国产成人综合色在线观看网站 | av在线亚洲欧洲日产一区二区 | 无码国模国产在线观看 | 青草视频在线播放 | 伊人久久婷婷五月综合97色 | 熟妇激情内射com | 乱码av麻豆丝袜熟女系列 | 啦啦啦www在线观看免费视频 | 精品熟女少妇av免费观看 | 日韩 欧美 动漫 国产 制服 | 国产极品美女高潮无套在线观看 | 漂亮人妻洗澡被公强 日日躁 | 无码帝国www无码专区色综合 | 国产熟女一区二区三区四区五区 | 国产内射爽爽大片视频社区在线 | 精品无码av一区二区三区 | 性欧美疯狂xxxxbbbb | 色婷婷欧美在线播放内射 | 中文字幕无码日韩欧毛 | 搡女人真爽免费视频大全 | 一二三四社区在线中文视频 | 日本熟妇乱子伦xxxx | 久久久久成人片免费观看蜜芽 | 国产手机在线αⅴ片无码观看 | 色狠狠av一区二区三区 | 美女扒开屁股让男人桶 | 久久久国产一区二区三区 | 中文字幕无码av波多野吉衣 | 午夜理论片yy44880影院 | 国产亚洲欧美在线专区 | 国产真实乱对白精彩久久 | 国产人妻精品午夜福利免费 | 亚洲精品一区二区三区大桥未久 | 色欲久久久天天天综合网精品 | 亚洲 日韩 欧美 成人 在线观看 | 色婷婷av一区二区三区之红樱桃 | 久久久久久久女国产乱让韩 | 亚洲中文字幕成人无码 | 99麻豆久久久国产精品免费 | 国产麻豆精品一区二区三区v视界 | 精品国偷自产在线视频 | 999久久久国产精品消防器材 | 中文字幕无码视频专区 | 美女毛片一区二区三区四区 | 日本免费一区二区三区最新 | www国产亚洲精品久久网站 | 欧美国产亚洲日韩在线二区 | 一本色道久久综合亚洲精品不卡 | 国产亚洲精品久久久久久大师 | 狠狠噜狠狠狠狠丁香五月 | 欧美一区二区三区视频在线观看 | 人妻夜夜爽天天爽三区 | 麻豆国产人妻欲求不满谁演的 | 久久这里只有精品视频9 | 国产女主播喷水视频在线观看 | 日本丰满熟妇videos | 国产精品久久国产精品99 | 国产无遮挡又黄又爽又色 | 奇米影视7777久久精品 | 性欧美疯狂xxxxbbbb | 少妇人妻av毛片在线看 | 丰满少妇高潮惨叫视频 | 亚洲国产综合无码一区 | 精品久久久无码中文字幕 | 无人区乱码一区二区三区 | 精品无人国产偷自产在线 | 成熟人妻av无码专区 | 又大又黄又粗又爽的免费视频 | 伊在人天堂亚洲香蕉精品区 | 亚洲国产高清在线观看视频 | 亚洲国产精华液网站w | 亚洲熟悉妇女xxx妇女av | 精品国产福利一区二区 | 永久免费观看美女裸体的网站 | 亚洲精品一区二区三区大桥未久 | 国产后入清纯学生妹 | 久久亚洲日韩精品一区二区三区 | 久久综合色之久久综合 | 亚洲伊人久久精品影院 | 欧美 日韩 亚洲 在线 | 久久成人a毛片免费观看网站 | 国语精品一区二区三区 | 日韩精品久久久肉伦网站 | 99国产精品白浆在线观看免费 | 亚洲 欧美 激情 小说 另类 | 色偷偷人人澡人人爽人人模 | 色欲久久久天天天综合网精品 | 少妇激情av一区二区 | 欧美国产日韩久久mv | 久久久中文久久久无码 | 狂野欧美性猛交免费视频 | 欧美人与禽zoz0性伦交 | 丰满少妇人妻久久久久久 | 国产免费无码一区二区视频 | 久激情内射婷内射蜜桃人妖 | 午夜嘿嘿嘿影院 | 久久熟妇人妻午夜寂寞影院 | 波多野结衣av一区二区全免费观看 | 欧美变态另类xxxx | 中文亚洲成a人片在线观看 | 伊人久久大香线蕉av一区二区 | 婷婷五月综合激情中文字幕 | 亚洲日本一区二区三区在线 | 狠狠色噜噜狠狠狠7777奇米 | 亚洲国产精品久久久天堂 | 色婷婷香蕉在线一区二区 | 思思久久99热只有频精品66 | 极品尤物被啪到呻吟喷水 | 无套内谢的新婚少妇国语播放 | 99久久久国产精品无码免费 | 精品成在人线av无码免费看 | 国内精品一区二区三区不卡 | 久久久久人妻一区精品色欧美 | 国产sm调教视频在线观看 | 宝宝好涨水快流出来免费视频 | 欧美黑人乱大交 | 国产熟妇另类久久久久 | 久久久久久国产精品无码下载 | 人人澡人摸人人添 | 色婷婷av一区二区三区之红樱桃 | 无码帝国www无码专区色综合 | 精品国偷自产在线 | 无码毛片视频一区二区本码 | 人妻熟女一区 | 国产乱码精品一品二品 | 国产卡一卡二卡三 | 久久精品国产一区二区三区 | 青青久在线视频免费观看 | 给我免费的视频在线观看 | 天堂无码人妻精品一区二区三区 | 1000部夫妻午夜免费 | 久久久精品456亚洲影院 | 欧洲vodafone精品性 | 成人片黄网站色大片免费观看 | 3d动漫精品啪啪一区二区中 | 国产精品高潮呻吟av久久 | 欧美激情一区二区三区成人 | 亚洲中文字幕无码中文字在线 | 国产乱人伦偷精品视频 | 性欧美大战久久久久久久 | 又大又紧又粉嫩18p少妇 | 九九热爱视频精品 | 亚洲午夜无码久久 | 日韩人妻系列无码专区 | 国产精品久久久一区二区三区 | 97久久国产亚洲精品超碰热 | 小sao货水好多真紧h无码视频 | 精品国产福利一区二区 | 久久无码专区国产精品s | 老熟女重囗味hdxx69 | 久久亚洲中文字幕精品一区 | 图片区 小说区 区 亚洲五月 | 澳门永久av免费网站 | 综合人妻久久一区二区精品 | 国语精品一区二区三区 | 国产精品内射视频免费 | 美女毛片一区二区三区四区 | 亚洲va欧美va天堂v国产综合 | 国产精品久久久久久久影院 | 男人的天堂2018无码 | 精品久久久久久人妻无码中文字幕 | 国产人妻人伦精品1国产丝袜 | 爆乳一区二区三区无码 | 国产精品办公室沙发 | 国产热a欧美热a在线视频 | 国产免费久久久久久无码 | 久久精品国产一区二区三区 | 久久成人a毛片免费观看网站 | 乱码av麻豆丝袜熟女系列 | 伊人色综合久久天天小片 | 精品国产一区二区三区四区在线看 | 国产网红无码精品视频 | 男人和女人高潮免费网站 | 国产性生交xxxxx无码 | 国产99久久精品一区二区 | 99麻豆久久久国产精品免费 | 日韩av无码一区二区三区不卡 | 无码毛片视频一区二区本码 | 又粗又大又硬又长又爽 | 老司机亚洲精品影院 | 成人毛片一区二区 | 亚洲欧洲无卡二区视頻 | 激情爆乳一区二区三区 | 俺去俺来也www色官网 | 亚洲欧美日韩综合久久久 | 国产麻豆精品一区二区三区v视界 | 一本精品99久久精品77 | 欧美老妇交乱视频在线观看 | 亚洲一区二区三区含羞草 | 欧美人与善在线com | 中文字幕无码免费久久9一区9 | 爽爽影院免费观看 | 中文字幕无码乱人伦 | 伊人久久婷婷五月综合97色 | 无码av岛国片在线播放 | 日本va欧美va欧美va精品 | 中文字幕日韩精品一区二区三区 | 亚洲人成人无码网www国产 | 好爽又高潮了毛片免费下载 | 欧美zoozzooz性欧美 | 亚洲一区二区三区四区 | 久久精品人人做人人综合试看 | 伊人久久大香线蕉亚洲 | 97精品人妻一区二区三区香蕉 | 国産精品久久久久久久 | 黑人巨大精品欧美黑寡妇 | 国产人妖乱国产精品人妖 | 国内精品久久毛片一区二区 | 性色av无码免费一区二区三区 | 国产av无码专区亚洲a∨毛片 | 亚洲精品中文字幕久久久久 | 亚洲国产精品久久久久久 | 东京热一精品无码av | 狠狠躁日日躁夜夜躁2020 | 亚洲va欧美va天堂v国产综合 | 国产精品久久久一区二区三区 | 日本一本二本三区免费 | 国产精品沙发午睡系列 | 蜜桃臀无码内射一区二区三区 | 久久精品国产大片免费观看 | 青草青草久热国产精品 | 久久久国产精品无码免费专区 | 久久人妻内射无码一区三区 | 成人亚洲精品久久久久软件 | 国产精品第一国产精品 | 丰满妇女强制高潮18xxxx | 欧美 亚洲 国产 另类 | 黄网在线观看免费网站 | 国产情侣作爱视频免费观看 | 精品水蜜桃久久久久久久 | 亚洲精品国偷拍自产在线麻豆 | 日本www一道久久久免费榴莲 | 扒开双腿疯狂进出爽爽爽视频 | 国产又爽又猛又粗的视频a片 | 国产sm调教视频在线观看 | 亚洲精品成人av在线 | 久久熟妇人妻午夜寂寞影院 | 日日摸天天摸爽爽狠狠97 | √天堂资源地址中文在线 | 精品国偷自产在线视频 | 欧美丰满熟妇xxxx | 男女猛烈xx00免费视频试看 | 亚洲精品一区二区三区在线观看 | 国产午夜福利100集发布 | 欧美精品一区二区精品久久 | 日产精品高潮呻吟av久久 | 国产乱码精品一品二品 | 一个人免费观看的www视频 | 国产精华av午夜在线观看 | 亚洲精品国产精品乱码视色 | 一二三四社区在线中文视频 | 综合人妻久久一区二区精品 | 欧美老熟妇乱xxxxx | 丰满岳乱妇在线观看中字无码 | 熟女少妇在线视频播放 | 无码免费一区二区三区 | 天干天干啦夜天干天2017 | 亚洲欧美日韩国产精品一区二区 | 亚洲精品美女久久久久久久 | 黑人大群体交免费视频 | 久久人人爽人人人人片 | 亚洲日韩乱码中文无码蜜桃臀网站 | 国产午夜福利100集发布 | 初尝人妻少妇中文字幕 | а√资源新版在线天堂 | 国内精品久久毛片一区二区 | 图片小说视频一区二区 | 亚洲啪av永久无码精品放毛片 | 亚洲国产精品美女久久久久 | 欧美成人午夜精品久久久 | 国产内射老熟女aaaa | 欧美日本精品一区二区三区 | 国产激情精品一区二区三区 | 高清不卡一区二区三区 | 无码一区二区三区在线观看 | 扒开双腿吃奶呻吟做受视频 | 18黄暴禁片在线观看 | 99精品久久毛片a片 | 亚洲色偷偷偷综合网 | 亲嘴扒胸摸屁股激烈网站 | 亚洲人成网站在线播放942 | 色欲人妻aaaaaaa无码 | 国产精品自产拍在线观看 | 色欲av亚洲一区无码少妇 | 国产亚洲精品久久久久久 | 在线а√天堂中文官网 | 中文精品无码中文字幕无码专区 | 中文字幕人妻丝袜二区 | 人人爽人人澡人人高潮 | 中文字幕乱码人妻无码久久 | 5858s亚洲色大成网站www | 精品偷自拍另类在线观看 | 亚洲最大成人网站 | 搡女人真爽免费视频大全 | 麻豆国产97在线 | 欧洲 | 国产口爆吞精在线视频 | 少妇太爽了在线观看 | 精品一区二区三区无码免费视频 | 狠狠色色综合网站 | 欧美日韩一区二区综合 | 玩弄少妇高潮ⅹxxxyw | 黑人大群体交免费视频 | 狠狠综合久久久久综合网 | 亚洲男人av天堂午夜在 | 夜夜影院未满十八勿进 | 内射后入在线观看一区 | 亚洲精品一区二区三区大桥未久 | 免费看少妇作爱视频 | 久久久国产精品无码免费专区 | 亚洲成av人片在线观看无码不卡 | 亚洲人交乣女bbw | 国产无av码在线观看 | 对白脏话肉麻粗话av | 成人无码精品一区二区三区 | 国产av无码专区亚洲a∨毛片 | 婷婷色婷婷开心五月四房播播 | 欧美黑人巨大xxxxx | 98国产精品综合一区二区三区 | 特大黑人娇小亚洲女 | 黑人粗大猛烈进出高潮视频 | 无码av中文字幕免费放 | 狂野欧美激情性xxxx | 水蜜桃亚洲一二三四在线 | 日产精品高潮呻吟av久久 | 国产精品18久久久久久麻辣 | 国产真人无遮挡作爱免费视频 | 国产精品久久久久7777 | 久久无码中文字幕免费影院蜜桃 | 午夜无码人妻av大片色欲 | 国产精品内射视频免费 | 亚洲aⅴ无码成人网站国产app | 2020久久香蕉国产线看观看 | 国产欧美亚洲精品a | 成人aaa片一区国产精品 | 精品亚洲韩国一区二区三区 | 精品一区二区三区波多野结衣 | 日日碰狠狠丁香久燥 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 欧美兽交xxxx×视频 | 精品成在人线av无码免费看 | 日本精品人妻无码77777 天堂一区人妻无码 | 免费无码的av片在线观看 | 动漫av网站免费观看 | 图片区 小说区 区 亚洲五月 | 亚洲啪av永久无码精品放毛片 | 国产69精品久久久久app下载 | 成人精品一区二区三区中文字幕 | 成人影院yy111111在线观看 | 人妻天天爽夜夜爽一区二区 | 国产黑色丝袜在线播放 | 色婷婷久久一区二区三区麻豆 | 久久97精品久久久久久久不卡 | 夜夜高潮次次欢爽av女 | v一区无码内射国产 | 国产97色在线 | 免 | 国产精品无码一区二区桃花视频 | 宝宝好涨水快流出来免费视频 | 十八禁视频网站在线观看 | 欧美亚洲日韩国产人成在线播放 | 久久久久久国产精品无码下载 | 精品亚洲韩国一区二区三区 | 国产精品第一区揄拍无码 | 性欧美videos高清精品 | 久久久久免费精品国产 | 蜜桃av抽搐高潮一区二区 | 久久久久99精品成人片 | 国产亚洲精品久久久久久久久动漫 | 久久综合狠狠综合久久综合88 | 国产黑色丝袜在线播放 | 国产精品a成v人在线播放 | 高潮毛片无遮挡高清免费视频 | 性做久久久久久久免费看 | 无码人妻av免费一区二区三区 | 亚洲一区二区三区无码久久 | 久久久久久久人妻无码中文字幕爆 | 中文无码精品a∨在线观看不卡 | 国产激情无码一区二区app | 亚洲色欲色欲天天天www | 国产精品美女久久久久av爽李琼 | 人人妻人人澡人人爽欧美一区九九 | 高中生自慰www网站 | 女高中生第一次破苞av | 亚洲の无码国产の无码步美 | 超碰97人人做人人爱少妇 | 国产av无码专区亚洲awww | 欧美丰满熟妇xxxx性ppx人交 | 亚洲国产高清在线观看视频 | 国产熟女一区二区三区四区五区 | 精品欧洲av无码一区二区三区 | 天堂在线观看www | 男人扒开女人内裤强吻桶进去 | 双乳奶水饱满少妇呻吟 | 国产精品亚洲综合色区韩国 | 少妇被粗大的猛进出69影院 | 欧美一区二区三区 | 熟妇人妻无乱码中文字幕 | 国产精品久久久午夜夜伦鲁鲁 | 麻豆精产国品 | 午夜理论片yy44880影院 | 成人性做爰aaa片免费看 | 国产欧美精品一区二区三区 | 欧美成人午夜精品久久久 | 亚洲精品无码国产 | 国产精品无码一区二区桃花视频 | 一本精品99久久精品77 | 欧美一区二区三区视频在线观看 | 久久久精品欧美一区二区免费 | 亚洲成a人片在线观看日本 | 欧洲极品少妇 | 亚洲色在线无码国产精品不卡 | 欧美三级a做爰在线观看 | 男女性色大片免费网站 | 亚洲日韩av一区二区三区中文 | 国产亚av手机在线观看 | 国产亚洲人成a在线v网站 | 中文字幕无线码免费人妻 | 国内丰满熟女出轨videos | 伊人久久大香线蕉亚洲 | 欧美成人午夜精品久久久 | 人妻尝试又大又粗久久 | 午夜无码人妻av大片色欲 | 欧美变态另类xxxx | 久久人人爽人人爽人人片ⅴ | 毛片内射-百度 | 女人被男人爽到呻吟的视频 | 四虎国产精品一区二区 | 国产午夜视频在线观看 | 日本乱人伦片中文三区 | 久久99久久99精品中文字幕 | 国产精品久久久午夜夜伦鲁鲁 | 麻豆av传媒蜜桃天美传媒 | 久久婷婷五月综合色国产香蕉 | 成熟女人特级毛片www免费 | 天天燥日日燥 | 波多野结衣av在线观看 | 曰韩无码二三区中文字幕 | 天天躁夜夜躁狠狠是什么心态 | 一二三四在线观看免费视频 | 国产精品欧美成人 | 色爱情人网站 | 欧美放荡的少妇 | 国产精品第一区揄拍无码 | 欧美老妇交乱视频在线观看 | 久久久久久久女国产乱让韩 | 黑人巨大精品欧美一区二区 | 亚洲一区二区三区香蕉 | 精品无码国产一区二区三区av | 中文字幕+乱码+中文字幕一区 | 国产一区二区三区日韩精品 | 4hu四虎永久在线观看 | 野狼第一精品社区 | 亚洲精品美女久久久久久久 | 欧美激情一区二区三区成人 | 精品无人区无码乱码毛片国产 | 欧美激情一区二区三区成人 | 丰满护士巨好爽好大乳 | 亚洲日韩中文字幕在线播放 | 亚洲毛片av日韩av无码 | 国语自产偷拍精品视频偷 | 国产九九九九九九九a片 | 一二三四在线观看免费视频 | 国产精品香蕉在线观看 | 98国产精品综合一区二区三区 | 一区二区三区高清视频一 | 黄网在线观看免费网站 | 国产精品免费大片 | 狠狠色欧美亚洲狠狠色www | 国产片av国语在线观看 | 给我免费的视频在线观看 | 久久www免费人成人片 | 亚洲色大成网站www | 青草青草久热国产精品 | 亚洲精品国产品国语在线观看 | 久久99热只有频精品8 | 成人免费视频视频在线观看 免费 | 97se亚洲精品一区 | 国内精品人妻无码久久久影院 | 少妇一晚三次一区二区三区 | 亚洲男人av香蕉爽爽爽爽 | 久久99精品久久久久婷婷 | 天堂亚洲2017在线观看 | 一本久久伊人热热精品中文字幕 | 天堂在线观看www | 少妇激情av一区二区 | 国产偷国产偷精品高清尤物 | 在线精品国产一区二区三区 | 熟妇女人妻丰满少妇中文字幕 | 国内精品久久毛片一区二区 | 亚洲一区二区三区含羞草 | 欧美丰满熟妇xxxx | 久久久久久国产精品无码下载 | 欧美精品免费观看二区 | 天天拍夜夜添久久精品大 | 亚洲区欧美区综合区自拍区 | 亚洲阿v天堂在线 | 亚洲国精产品一二二线 | 日韩精品无码免费一区二区三区 | 亚洲欧美精品aaaaaa片 | 狠狠色欧美亚洲狠狠色www | 免费无码午夜福利片69 | 人妻夜夜爽天天爽三区 | 亚洲日韩乱码中文无码蜜桃臀网站 | 亚洲s色大片在线观看 | 亚洲熟妇色xxxxx欧美老妇 | 亚洲熟妇色xxxxx亚洲 | 亚洲自偷自偷在线制服 | 亚洲国产午夜精品理论片 | 日本护士毛茸茸高潮 | 377p欧洲日本亚洲大胆 | 国产麻豆精品精东影业av网站 | 亚洲国产精品久久人人爱 | 亚洲aⅴ无码成人网站国产app | 日日摸夜夜摸狠狠摸婷婷 | 日本一卡2卡3卡四卡精品网站 | 乱中年女人伦av三区 | 精品一二三区久久aaa片 | 牛和人交xxxx欧美 | 欧美35页视频在线观看 | 亚洲欧洲日本综合aⅴ在线 | 国产亚洲精品精品国产亚洲综合 | 在线播放无码字幕亚洲 | 永久免费观看国产裸体美女 | 97无码免费人妻超级碰碰夜夜 | 又大又黄又粗又爽的免费视频 | 国产午夜无码精品免费看 | 精品无码av一区二区三区 | 97se亚洲精品一区 | 牲交欧美兽交欧美 | 少妇性俱乐部纵欲狂欢电影 | 少妇激情av一区二区 | 伊在人天堂亚洲香蕉精品区 | 亚洲欧美日韩成人高清在线一区 | 沈阳熟女露脸对白视频 | 性史性农村dvd毛片 | 久久国产劲爆∧v内射 | 亚洲日韩一区二区 | 亚洲欧美综合区丁香五月小说 | 5858s亚洲色大成网站www | 人妻夜夜爽天天爽三区 | 理论片87福利理论电影 | 无码人妻精品一区二区三区下载 | 中文字幕无码av激情不卡 | 秋霞特色aa大片 | 国产精品亚洲综合色区韩国 | 精品厕所偷拍各类美女tp嘘嘘 | 亚洲va中文字幕无码久久不卡 | 毛片内射-百度 | 青青青爽视频在线观看 | 国産精品久久久久久久 | 亚拍精品一区二区三区探花 | 国精品人妻无码一区二区三区蜜柚 | 欧美自拍另类欧美综合图片区 | 高潮毛片无遮挡高清免费 | 午夜精品久久久久久久 | 亚洲 另类 在线 欧美 制服 | 日本护士xxxxhd少妇 | 国产午夜精品一区二区三区嫩草 | 久久aⅴ免费观看 | 人人妻人人澡人人爽欧美一区九九 | 正在播放老肥熟妇露脸 | 国产成人亚洲综合无码 | 又湿又紧又大又爽a视频国产 | 丰满肥臀大屁股熟妇激情视频 | 亚洲成a人片在线观看日本 | 亚洲一区二区三区 | 亚洲精品综合一区二区三区在线 | 亚洲狠狠婷婷综合久久 | 亚洲性无码av中文字幕 | 无码毛片视频一区二区本码 | 97夜夜澡人人爽人人喊中国片 | 国产高清不卡无码视频 | 亚洲日本va午夜在线电影 | 国产精品无套呻吟在线 | 精品国产av色一区二区深夜久久 | 国产片av国语在线观看 | 久久久久久a亚洲欧洲av冫 | 99国产欧美久久久精品 | 人妻尝试又大又粗久久 | 免费播放一区二区三区 | 日本饥渴人妻欲求不满 | 中文毛片无遮挡高清免费 | 国产亚洲精品久久久久久国模美 | 国产精品无码mv在线观看 | 女人被爽到呻吟gif动态图视看 | 日本欧美一区二区三区乱码 | 国产av人人夜夜澡人人爽麻豆 | 亚洲精品中文字幕乱码 | 亚洲成av人综合在线观看 | 欧美日韩综合一区二区三区 | 国产三级久久久精品麻豆三级 | 久久久精品国产sm最大网站 | 麻豆国产丝袜白领秘书在线观看 | 欧美丰满熟妇xxxx | 日本熟妇乱子伦xxxx | 人妻插b视频一区二区三区 | 亚洲热妇无码av在线播放 | 娇妻被黑人粗大高潮白浆 | 蜜桃视频插满18在线观看 | 中文字幕人妻丝袜二区 | 色五月丁香五月综合五月 | 国产熟女一区二区三区四区五区 | 国产内射老熟女aaaa | 巨爆乳无码视频在线观看 | 亚洲高清偷拍一区二区三区 | 东京无码熟妇人妻av在线网址 | 波多野结衣av一区二区全免费观看 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 亚洲精品无码人妻无码 | 亚洲日韩av一区二区三区中文 | 夫妻免费无码v看片 | 国产成人无码区免费内射一片色欲 | 黑人粗大猛烈进出高潮视频 | 精品国产aⅴ无码一区二区 | 国产精品亚洲专区无码不卡 | 日本精品高清一区二区 | 亚洲色欲色欲欲www在线 | 亚洲精品国产品国语在线观看 | 久久久久人妻一区精品色欧美 | 久久综合给久久狠狠97色 | 国产精品久久国产三级国 | 国产一精品一av一免费 | 人妻与老人中文字幕 | 久久综合久久自在自线精品自 | 欧美丰满熟妇xxxx性ppx人交 | 成 人影片 免费观看 | 黑人大群体交免费视频 | 国产内射老熟女aaaa | 蜜臀av无码人妻精品 | 免费播放一区二区三区 | 国产精品资源一区二区 | 中文字幕av伊人av无码av | 国产精品人妻一区二区三区四 | 久久国产精品偷任你爽任你 | 国产熟女一区二区三区四区五区 | 日产精品高潮呻吟av久久 | 欧美三级不卡在线观看 | av小次郎收藏 | 午夜精品久久久久久久久 | 狠狠色噜噜狠狠狠狠7777米奇 | 国产精品无码一区二区三区不卡 | 国产精品人人爽人人做我的可爱 | 中文字幕av日韩精品一区二区 | 亚洲精品一区二区三区四区五区 | 亚洲熟妇色xxxxx亚洲 | 亚洲 日韩 欧美 成人 在线观看 | 国语自产偷拍精品视频偷 | 正在播放老肥熟妇露脸 | 欧美人与禽猛交狂配 | 性欧美牲交在线视频 | 少妇高潮一区二区三区99 | 无码人妻丰满熟妇区毛片18 | 欧美刺激性大交 | 亚洲小说春色综合另类 | 国内精品一区二区三区不卡 | 1000部啪啪未满十八勿入下载 | 亚洲日韩av一区二区三区四区 | 网友自拍区视频精品 | 精品成人av一区二区三区 | 久久精品丝袜高跟鞋 | 大地资源网第二页免费观看 | 青青久在线视频免费观看 | 亚洲无人区午夜福利码高清完整版 | 国产超碰人人爽人人做人人添 | 国产农村乱对白刺激视频 | 好男人www社区 | 亚洲国产精华液网站w | 麻豆国产人妻欲求不满 | 中文字幕亚洲情99在线 | 性欧美大战久久久久久久 | 亚洲精品国产品国语在线观看 | 丰满护士巨好爽好大乳 | 强伦人妻一区二区三区视频18 | 国内综合精品午夜久久资源 | 国产精品久久久久7777 | 久久亚洲a片com人成 | 国产超级va在线观看视频 | 国产午夜手机精彩视频 | 中文字幕乱码亚洲无线三区 | 人妻无码久久精品人妻 | 亚洲欧美国产精品久久 | 俄罗斯老熟妇色xxxx | 天堂无码人妻精品一区二区三区 | 久久亚洲精品中文字幕无男同 | 久久综合九色综合97网 | 精品国产av色一区二区深夜久久 | 亚洲娇小与黑人巨大交 | 99re在线播放 | 亚洲国精产品一二二线 | 亚洲综合伊人久久大杳蕉 | 亚洲精品无码人妻无码 | 永久免费观看国产裸体美女 | 全球成人中文在线 | 中文字幕无码人妻少妇免费 | 色综合视频一区二区三区 | 人妻少妇精品视频专区 | 亚洲日本va午夜在线电影 | 丰满人妻一区二区三区免费视频 | 国产在线aaa片一区二区99 | 综合人妻久久一区二区精品 | www成人国产高清内射 | 久久97精品久久久久久久不卡 | 综合人妻久久一区二区精品 | 性开放的女人aaa片 | 学生妹亚洲一区二区 | 伊人色综合久久天天小片 | 人妻少妇精品视频专区 | 色综合久久网 | 大肉大捧一进一出好爽视频 | 国产精品va在线观看无码 | 最近的中文字幕在线看视频 | 日韩成人一区二区三区在线观看 | 午夜熟女插插xx免费视频 | 男女下面进入的视频免费午夜 | 一本久久伊人热热精品中文字幕 | 牲欲强的熟妇农村老妇女 | 国产性生大片免费观看性 | 中文无码成人免费视频在线观看 | 又粗又大又硬毛片免费看 | 国产xxx69麻豆国语对白 | 天下第一社区视频www日本 | 中国女人内谢69xxxxxa片 | 丰满妇女强制高潮18xxxx | 日本一卡二卡不卡视频查询 | 亚洲小说图区综合在线 | 51国偷自产一区二区三区 | 一本色道久久综合狠狠躁 | 国产精品igao视频网 | 精品无人区无码乱码毛片国产 | 久久综合色之久久综合 | 在线欧美精品一区二区三区 | 高清无码午夜福利视频 | 国产成人精品一区二区在线小狼 | 国产极品视觉盛宴 | 精品熟女少妇av免费观看 | 人妻少妇精品无码专区二区 | 亚洲性无码av中文字幕 | 日本精品人妻无码免费大全 | 欧美喷潮久久久xxxxx | 荫蒂被男人添的好舒服爽免费视频 | 色偷偷人人澡人人爽人人模 | 老太婆性杂交欧美肥老太 | 日本爽爽爽爽爽爽在线观看免 | 1000部啪啪未满十八勿入下载 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产国语老龄妇女a片 | 日韩av无码中文无码电影 | 亚洲国产精品久久久天堂 | 永久免费观看美女裸体的网站 | 麻豆蜜桃av蜜臀av色欲av | 精品无码国产自产拍在线观看蜜 | 国产高清av在线播放 | 成人免费视频在线观看 | 国产午夜亚洲精品不卡下载 | 一本久道高清无码视频 | 日韩 欧美 动漫 国产 制服 | 牲交欧美兽交欧美 | 无码人妻丰满熟妇区毛片18 | 亚洲精品鲁一鲁一区二区三区 | 男人的天堂av网站 | 色婷婷av一区二区三区之红樱桃 | 亚洲日韩精品欧美一区二区 | 国产成人无码a区在线观看视频app | 强伦人妻一区二区三区视频18 | 野外少妇愉情中文字幕 | 色婷婷久久一区二区三区麻豆 | 天天拍夜夜添久久精品 | ass日本丰满熟妇pics | 中文字幕av伊人av无码av | 久久综合色之久久综合 | 国产精华av午夜在线观看 | 欧美猛少妇色xxxxx | 精品偷拍一区二区三区在线看 | 99久久人妻精品免费一区 | 沈阳熟女露脸对白视频 | 麻豆成人精品国产免费 | 亚洲成a人一区二区三区 | 强开小婷嫩苞又嫩又紧视频 | 国内精品人妻无码久久久影院蜜桃 | 国产精品多人p群无码 | 台湾无码一区二区 | 日本肉体xxxx裸交 | 亚洲精品久久久久久久久久久 | 无码av岛国片在线播放 | 精品国精品国产自在久国产87 | 精品久久久中文字幕人妻 | 亚洲欧洲日本综合aⅴ在线 | 最近中文2019字幕第二页 | 亚洲国产精品久久久久久 | 久在线观看福利视频 | 免费中文字幕日韩欧美 | 最新国产麻豆aⅴ精品无码 | 日本精品高清一区二区 | 永久黄网站色视频免费直播 | 大肉大捧一进一出视频出来呀 | 久久久国产一区二区三区 | 久久久久亚洲精品男人的天堂 | 日韩欧美群交p片內射中文 | 99er热精品视频 | 午夜精品久久久久久久久 | 国产sm调教视频在线观看 | 人人妻人人澡人人爽精品欧美 | www国产精品内射老师 | 国产精品无码一区二区三区不卡 | 亚洲色www成人永久网址 | 久久综合九色综合97网 | 4hu四虎永久在线观看 | 国产三级精品三级男人的天堂 | 高潮毛片无遮挡高清免费视频 | 荫蒂被男人添的好舒服爽免费视频 | 国产一区二区不卡老阿姨 | 日日鲁鲁鲁夜夜爽爽狠狠 | 乌克兰少妇xxxx做受 | 在线视频网站www色 | 国产午夜亚洲精品不卡下载 | 国产性生交xxxxx无码 | 欧美刺激性大交 | 亚洲国产精品无码久久久久高潮 | 性色av无码免费一区二区三区 | 久久精品国产大片免费观看 | 成人综合网亚洲伊人 | 一区二区三区乱码在线 | 欧洲 | 欧美老妇交乱视频在线观看 | 成熟女人特级毛片www免费 | 秋霞成人午夜鲁丝一区二区三区 | 蜜臀aⅴ国产精品久久久国产老师 | 1000部啪啪未满十八勿入下载 | 中文字幕 亚洲精品 第1页 | 精品欧美一区二区三区久久久 | 日韩人妻无码一区二区三区久久99 | 丰满岳乱妇在线观看中字无码 | 国产特级毛片aaaaaa高潮流水 | 欧美zoozzooz性欧美 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产明星裸体无码xxxx视频 | 国产农村乱对白刺激视频 | 免费男性肉肉影院 | 大地资源中文第3页 |