欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網運營的一線實戰(zhàn)洞察。

std::ranges并行化:自建線程池與工作隊列的實踐

std::ranges并行化:自建線程池與工作隊列的實踐 最近我在重構一個內部數(shù)據(jù)處理模塊核心管道寫得非常漂亮一段std::ranges視圖經過filter、transform把非結構化字段規(guī)整成干凈的結構體最后落到ranges::sort做時序排列。可性能測試一出來就有點尷尬這些 ranges 算法全在單線程上跑機器上的多核基本在看熱鬧。想把并行執(zhí)行做進去讓 ranges 算法配合自己的線程池與工作隊列結果發(fā)現(xiàn)標準庫給出的支持比想象中少得多。這篇文章就是我在反復折騰后整理出來的一套落地思路如何拆范圍、建隊列、控線程數(shù)讓 range 管道真正吃滿多核順便把踩過的坑都交代清楚。1. std::ranges 并行這件事標準到底給了什么1.1 ranges 算法很香但為什么等不到并行重載std::ranges算法是 C20 帶來的最大語法糖之一。以往我們寫排序、變換、查找都要小心翼翼地傳迭代器對代碼一長就變成“迭代器地獄”。有了 ranges 之后std::ranges::sort(data)、std::ranges::for_each(v, fn)這種寫法不僅簡短而且能配合 view 做惰性求值和管道拼接表達力直接上一個臺階。但有一個非?,F(xiàn)實的坑標準庫的 ranges 算法并不帶并行執(zhí)行策略重載。至少到 C23 標準std::ranges::sort、std::ranges::transform這些算法都沒有接受std::execution::par的版本。你可能會寫出下面這種代碼然后發(fā)現(xiàn)編譯期直接報錯// 這只是理想寫法目前標準庫中并不存在這樣的重載 std::ranges::sort(std::execution::par, data); // 編譯不過 std::ranges::transform(std::execution::par, input, output, fn); // 編譯不過也就是說標題里那個“ranges 算法并行執(zhí)行”并不能靠標準庫一個參數(shù)白拿。想并行要么退回傳統(tǒng)迭代器算法加std::execution::par要么自己包一層調度把 range 按塊拆開派發(fā)給工作線程。委員會沒有把兩者接通原因比較復雜核心是 ranges 和后來的 executors 方向還沒有合并成穩(wěn)定的統(tǒng)一模型std::execution::par只是早期執(zhí)行策略形態(tài)真正的調度器體系直到后來的提案才逐漸成型。作為使用者我們不能干等標準最好的路線是自己把調度層補出來。1.2 標準并行執(zhí)行策略的真實工作方式C17 提供了四個執(zhí)行策略標簽seq串行、unseq向量化、par多線程、par_unseq線程加向量化。它的用法集中在傳統(tǒng)算法上std::sort(std::execution::par, data.begin(), data.end()); std::for_each(std::execution::par, data.begin(), data.end(), fn);它會“盡可能”并行但標準對并行粒度、線程數(shù)量、任務隊列完全不規(guī)定。也就是說并行行為完全取決于實現(xiàn)內部的后端有的實現(xiàn)會用自己的一套任務調度器有的實現(xiàn)會綁硬件線程數(shù)做并行分塊有的是在第一次調用時初始化一個全局線程池。問題也藏在這里。這套后端對你是不可見的你沒法告訴它“我這個項目已經有線程池了請復用”也沒法控制“我今天只想用 4 個線程不要跑滿 16 個邏輯核”更沒法在業(yè)務高峰期控制隊列深度。當一個模塊里同時出現(xiàn)多個并行算法調用時它們各自獨立調度線程數(shù)翻倍、CPU 超訂是常有的事。所以我一直認為std::execution::par適合“粗粒度地加速單次算法調用”的場景但如果你的項目里本身就有線程池或者希望精準控制任務隊列那必須自己接管調度層。這正好是本文標題里“線程池管理與工作隊列優(yōu)化”存在的價值。1.3 不讓標準庫替你調度那你需要解決什么問題當你不使用std::execution::par而是想自己控制并行時核心要解決四個問題并行度控制用多少線程線程數(shù)是否動態(tài)可變。任務切分range 那么大按什么粒度切成塊塊數(shù)多少合適。任務派發(fā)與回收塊切好了怎么把每個塊作為任務丟進隊列線程執(zhí)行完怎么通知主線程。結果合并每個線程處理完得到的是局部結果如何高效合成為全局結果。這四個問題聽起來多其實拆開就是一套線程池加一套分塊策略。下面我先把線程池骨架寫出來再補分塊和合并的完整玩法。2. 自建線程池隊列、線程數(shù)和提交接口的設計2.1 一個能直接跑起來的最小線程池先給一個最小但完整的線程池實現(xiàn)。它不算最優(yōu)但足夠作為后續(xù)優(yōu)化的起點#include condition_variable #include deque #include future #include mutex #include thread #include vector class ThreadPool { public: explicit ThreadPool(size_t threadCount) : stop_(false) { for (size_t i 0; i threadCount; i) { workers_.emplace_back([this] { for (;;) { std::packaged_taskvoid() job; { std::unique_lockstd::mutex lock(mutex_); cv_.wait(lock, [this] { return stop_ || !queue_.empty(); }); if (stop_ queue_.empty()) return; job std::move(queue_.front()); queue_.pop_front(); } job(); } }); } } template typename F auto submit(F func) - std::futurevoid { std::packaged_taskvoid() task(std::forwardF(func)); auto future task.get_future(); { std::lock_guardstd::mutex lock(mutex_); queue_.push_back(std::move(task)); } cv_.notify_one(); return future; } ~ThreadPool() { { std::lock_guardstd::mutex lock(mutex_); stop_ true; } cv_.notify_all(); for (auto worker : workers_) { worker.join(); } } private: std::atomicbool stop_; std::dequestd::packaged_taskvoid() queue_; std::mutex mutex_; std::condition_variable cv_; std::vectorstd::thread workers_; };這個類值得注意的細節(jié)有三個為什么用std::packaged_taskvoid()而不是std::functionvoid()packaged_task自帶future提交時就能拿到結果句柄省去再包一層shared_ptr的麻煩。worker 執(zhí)行job()時future狀態(tài)會被置為 ready調用方通過future.wait()或者future.get()回收結果。為什么析構時先加鎖再notify_all因為 worker 循環(huán)里對停止狀態(tài)和隊列空判斷同時發(fā)生在鎖內。如果不加鎖直接設置stop_可能出現(xiàn) worker 剛判完queue_.empty()主線程就設置停止并通知worker 醒來后看到隊列已空才退出邏輯上沒問題但 stop 標志寫入和讀取最好由同一把鎖保護避免晦澀的競態(tài)。為什么隊列用std::deque而不是std::vectordeque支持兩端高效操作。雖然我們目前只從尾部入隊、頭部出隊但后續(xù)如果要做 LIFO 策略新任務優(yōu)先執(zhí)行只需把push_back改成push_front不用換容器。這個實現(xiàn)里submit返回std::futurevoid對大多數(shù)“數(shù)據(jù)分塊處理、最終各塊互不相干”的任務完全夠用。如果后面需要每個塊返回一個具體值改成std::futureT版本即可下面會講到。2.2 線程數(shù)量不是越多越好線程池最容易被忽略的參數(shù)是線程數(shù)。很多人直接寫std::thread::hardware_concurrency()然后期望性能拉滿。實測下來這條規(guī)則對純 CPU 密集任務是“半個坑”。hardware_concurrency返回的是邏輯處理器數(shù)量包含超線程。在 8 核 16 線程的機器上它會返回 16但如果你跑的是純浮點計算16 個“邏輯處理器”共享物理核心的執(zhí)行單元線程開滿反而帶來上下文切換和調度開銷。我對純 CPU 密集任務的經驗是先從物理核數(shù)或邏輯核數(shù)的一半起步跑一輪實測再向上調。遇到任務里有 IO 等待、鎖等待、系統(tǒng)調用時可以適當加線程數(shù)讓部分線程在等待間隙不阻塞整體進度。還有一個隱藏因素任務塊的數(shù)量和線程數(shù)的比值。這個比值直接決定調度開銷的占比。比如一塊數(shù)據(jù) 1.2 億個元素開 8 個線程每個線程處理 1500 萬個元素單塊執(zhí)行時間可能幾十毫秒調度開銷可忽略。但如果數(shù)據(jù)只有 10 萬元素同樣開 8 個線程每個塊只有一萬多元素單塊執(zhí)行時間可能只有幾十微秒那么隊列鎖、notify_one、future 狀態(tài)同步的開銷就可能占到 20% 以上。具體怎么定塊大小下面第四章我會給一組實測數(shù)據(jù)。2.3 提交接口從單任務到批量入隊上面的submit一次只能投遞一個任務每次都要加鎖、解鎖、notify_one。當任務塊數(shù)量達到幾千甚至幾萬時鎖競爭會成為瓶頸。一個很實用的優(yōu)化是增加批量提交接口template typename F void submitBatch(std::vectorF tasks) { { std::lock_guardstd::mutex lock(mutex_); for (auto task : tasks) { std::packaged_taskvoid() wrapped(std::move(task)); queue_.push_back(std::move(wrapped)); } } cv_.notify_all(); }批量提交把 N 次加鎖變成一次加鎖然后一次性喚醒所有 idle 線程。你可能覺得“一次提交 32 個任務還省什么鎖”但如果任務塊數(shù)上千每次 submit 都鎖同一個 mutex等待時間會迅速累積。我在實際工程里遇到的一個場景是對 1.2 億條日志按每 1024 條分塊分出一萬多個任務逐個 submit 的那一版光提交階段就消耗了接近 200ms改成批量化插入后提交階段縮到 30ms 以內。另一個值得做的是去掉 future 的開銷。如果任務沒有返回值你只需要知道“全部執(zhí)行完了”保留一堆futurevoid其實有些浪費??梢杂靡粋€原子計數(shù)器加條件變量任務完成后計數(shù)器遞減最后一個完工的任務通知主線程。這樣既省 future 列表的內存也省逐個 wait 的循環(huán)。std::atomicsize_t pending{0}; std::condition_variable doneCv; std::mutex doneMutex; void pushTask(std::packaged_taskvoid() task) { { std::lock_guardstd::mutex lock(mutex_); pending.fetch_add(1); queue_.push_back(std::move(task)); } cv_.notify_one(); } void onTaskFinished() { if (pending.fetch_sub(1) 1) { std::lock_guardstd::mutex lock(doneMutex); doneCv.notify_all(); } } void waitAll() { std::unique_lockstd::mutex lock(doneMutex); doneCv.wait(lock, [] { return pending.load() 0; }); }注意務必在任務內部調用onTaskFinished()并確保異常安全。如果任務拋異常計數(shù)會丟失waitAll永遠等不到零。穩(wěn)妥做法是用 RAII 包一層析構時遞減計數(shù)。3. 把 ranges 算法拆到工作隊列上三種模式與代碼落地線程池有了接下來就是把std::ranges算法真正派發(fā)上去。不同算法有不同的并行模式不能一把梭。我把常見場景分成三類映射型、歸約型、全局依賴型。3.1 映射型任務for_each / transform最基礎也最容易并行化的是for_each、transform這類逐元素操作塊與塊之間沒有任何數(shù)據(jù)依賴。核心思路把 range 切成連續(xù)塊每塊獨立調用ranges::for_each或ranges::transform。template typename Range, typename Fn void parallelTransformInplace(ThreadPool pool, Range range, Fn fn) { using std::ranges::begin; using std::ranges::end; size_t n std::ranges::distance(range); if (n 0) return; const size_t hw std::thread::hardware_concurrency(); const size_t blocks hw * 4; // 塊數(shù)約為線程數(shù) 4 倍 const size_t chunk (n blocks - 1) / blocks; // 每塊元素數(shù) auto it begin(range); std::vectorstd::futurevoid futures; futures.reserve(blocks); for (size_t offset 0; offset n; offset chunk) { auto blockBegin std::next(it, offset); auto blockEnd std::next(blockBegin, std::min(chunk, n - offset)); futures.push_back(pool.submit([blockBegin, blockEnd, fn]() { std::ranges::for_each(blockBegin, blockEnd, fn); })); } for (auto f : futures) { f.wait(); } }這個實現(xiàn)有個前提range 是隨機訪問范圍。std::next(it, offset)在隨機訪問迭代器上 O(1)但如果底層是filter_view、istream_view每次推進都要遍歷元素切塊的代價會很高。我的做法是先把非隨機訪問范圍 materialize 成 vector再做并行分塊。比如從文件讀出的日志行經過filter過濾后可能只有 30% 通過直接按行號分塊容易導致負載不均先拷進 vector 再分塊反而更穩(wěn)定。對于transform要注意函數(shù)副作用。如果變換函數(shù)修改的是容器外共享狀態(tài)比如同一個計數(shù)器那并行時每個線程都在競爭結果既可能錯誤也會變慢。正確姿勢是內部無狀態(tài)或只修改自己塊內的元素。3.2 歸約型任務并行局部結果再合并求和、找最大值、統(tǒng)計滿足條件的數(shù)量這類任務的并行模式是“局部歸約 全局合并”。每個線程獨立計算自己的那塊最后匯總。很典型的例子是統(tǒng)計std::ranges::filter之后的元素數(shù)量template typename Range, typename Pred int64_t parallelCountIf(ThreadPool pool, const Range range, Pred pred) { auto n std::ranges::distance(range); if (n 0) return 0; const size_t hw std::thread::hardware_concurrency(); const size_t blocks hw * 4; const size_t chunk (n blocks - 1) / blocks; std::vectorint64_t partials(blocks, 0); std::vectorstd::futurevoid futures; auto it std::ranges::begin(range); for (size_t b 0; b blocks; b) { auto blockBegin std::next(it, b * chunk); auto blockEnd std::next(blockBegin, std::min(chunk, n - b * chunk)); futures.push_back(pool.submit([blockBegin, blockEnd, pred, partials, b]() { int64_t count 0; for (auto iter blockBegin; iter ! blockEnd; iter) { if (pred(*iter)) count; } partials[b] count; })); } for (auto f : futures) f.wait(); return std::accumulate(partials.begin(), partials.end(), int64_t{0}); }這里關鍵點是不要讓每個線程原子地累加一個全局計數(shù)器。原子fetch_add在溢出一級緩存后會形成 cacheline 乒乓性能遠不如各算各的、最后一次性合并。局部partials數(shù)組本身也可能踩偽共享的坑這點我放到第四章專門講。另一個技巧是如果任務塊內還需要繼續(xù)用 ranges 表達比如auto view subRange | std::views::filter(pred);完全可以在 lambda 里構建局部視圖讓代碼保持和單線程版本一樣的可讀性。并行化只是把外層切塊內部該用什么算法就用什么算法。3.3 全局依賴型任務排序的分塊與歸并排序比前面兩種復雜因為全數(shù)組最終必須有序塊與塊之間不是無關的。最經典的并行策略是分塊并行排序再做多路歸并。template typename T void parallelSort(std::vectorT data, ThreadPool pool) { const size_t n data.size(); if (n 10000) { std::ranges::sort(data); return; } const size_t hw std::thread::hardware_concurrency(); const size_t blockCount hw * 2; // 排序場景塊數(shù)不宜過多 const size_t chunk (n blockCount - 1) / blockCount; std::vectorstd::futurevoid futures; for (size_t i 0; i n; i chunk) { auto begin data.begin() i; auto end begin std::min(chunk, n - i); futures.push_back(pool.submit([begin, end]() { std::ranges::sort(begin, end); // 每個塊內部先有序 })); } for (auto f : futures) f.wait(); // 多輪歸并 for (size_t width chunk; width n; width * 2) { for (size_t left 0; left n; left 2 * width) { auto mid data.begin() std::min(left width, n); auto last data.begin() std::min(left 2 * width, n); std::inplace_merge(data.begin() left, mid, last); } } }注意這里歸并階段還是串行的塊數(shù)越多歸并的輪數(shù)和成本越高所以排序時塊數(shù)不能像映射型任務那樣取太多。我實際測下來排序場景的塊數(shù)取線程數(shù)的 1 到 2 倍效果最好再多就會讓歸并成為新瓶頸。想進一步并行化歸并階段可以對兩個有序段做二分切分找到左右兩個子問題后并行歸并但實現(xiàn)復雜度高不少工作量需要和收益匹配。如果你的數(shù)據(jù)不是簡單 vector而是經過views::filter或views::transform的視圖那并行排序前必須先 materialize。因為排序需要隨機訪問和原地交換視圖往往無法滿足。我的做法是std::vectorT tmp; if constexpr (std::ranges::random_access_rangeRange std::ranges::sized_rangeRange) { // 直接對目標 range 分塊 } else { tmp.assign(range.begin(), range.end()); // 對 tmp 排序若需要再寫回原容器 }4. 實測數(shù)據(jù)塊大小、線程數(shù)和隊列鎖的交叉影響4.1 測試場景與基線數(shù)據(jù)我在一臺 8 核 16 線程的 Linux 機器上做了組對照實驗。模擬項目X的數(shù)據(jù)集是 1.2 億個float總體數(shù)據(jù)量約 480MB。任務分三段先對每個元素做一次非線性變換再統(tǒng)計超過閾值的樣本數(shù)最后對結果排序輸出前 10000 個。單線程版本用純std::ranges管道耗時約 2180ms。傳統(tǒng)標準庫并行算法std::for_each(std::execution::par, ...)跑完約 640ms。自建線程池在參數(shù)沒調好時甚至跑到 900ms 以上調好之后降到 410ms。差距很大值得把參數(shù)關系展開講。4.2 塊數(shù)與線程數(shù)的交叉測試下面這組數(shù)據(jù)是同一批數(shù)據(jù)、同樣 16 個線程情況下不同塊數(shù)對耗時的影響配置transform 階段耗時 (ms)排序階段耗時 (ms)塊數(shù) 線程數(shù) x 116 塊548592塊數(shù) 線程數(shù) x 232 塊466545塊數(shù) 線程數(shù) x 464 塊430610塊數(shù) 線程數(shù) x 8128 塊408715塊數(shù) 線程數(shù) x 32512 塊475830transform 階段塊數(shù)太少時8 個元素少的線程很快做完剩下幾個線程在跑長尾負載不均衡塊數(shù)太多時每塊實際只做幾萬次浮點運算調度和 future 同步開銷抬頭耗時重新上升。所以 transform 場景里塊數(shù)取線程數(shù)的 4 到 8 倍是個比較好的甜點。排序階段則明顯不一樣塊數(shù)越少越穩(wěn)定因為歸并代價在塊數(shù)增多后快速上漲。512 塊時要進行 9 輪歸并最后幾輪幾乎每輪都要搬運全部 480MB 數(shù)據(jù)內存帶寬都耗在歸并上。所以排序場景我建議塊數(shù)控制在線程數(shù)的 1 到 2 倍。4.3 隊列鎖爭用與緩存行帶來的意外開銷當我按“每個元素單獨提交一個任務”這種極端方式寫并行時提交 1.2 億個任務顯然不現(xiàn)實但即使只提交幾萬個任務線程池的互斥鎖也會成為熱點。用perf看線程采樣能看到大量時間花在std::mutex::lock的等待和 futex 喚醒上。解決辦法就是前面說的批量提交接口和合理塊大小。另一個容易被忽略的是緩存行偽共享。我在 3.2 節(jié)的統(tǒng)計例子里用了一個std::vectorint64_t partials(blocks, 0)保存各塊結果。16 個int64_t緊挨著放在內存里很可能占用兩三個緩存行不同線程頻繁寫入相鄰地址導致緩存行在核間反復橫跳。將partials數(shù)組的元素對齊到 64 字節(jié)后統(tǒng)計階段耗時從 520ms 降到大約 440ms。這個優(yōu)化沒有任何算法改動只是內存布局更友好了。對齊方式很簡單定義一個帶alignas(64)的結構體struct alignas(64) PaddedCounter { int64_t value 0; }; std::vectorPaddedCounter partials(blocks);注意alignas(64)讓每個元素占滿一個緩存行就不會和鄰居互相污染。塊特別多時內存會多花一些但對大多數(shù)項目成本可忽略。5. 避坑記錄死鎖、偽共享與過度并行5.1 任務內嵌任務死鎖的真實案例我第一次把 ranges 管道接進線程池時寫過一個很自然的遞歸分治邏輯外層任務把 range 切成兩半然后向同一個線程池提交兩個子任務再future.wait()等子任務完成。結果程序在 16 個線程全忙時直接掛起。原因很經典16 個 worker 都在執(zhí)行某個父任務每個父任務都在等待自己派生的子任務但子任務排在隊列后面沒有任何線程去取形成互相等待。解決方式有幾種。最簡單的是任務內部不要再同步等待同一個線程池的任務改為把父任務自身拆成多個獨立任務最后統(tǒng)一在外部等待。如果一定要在任務內部遞歸那就不能把所有 worker 都占滿預留一個線程專門處理派生任務或者用“當前線程參與執(zhí)行隊列任務”的方式不讓父任務死等。從工程角度我會優(yōu)先選擇前者結構清晰也不容易踩邊界。5.2 先分塊再合并而不是靠原子變量到處加我在并行統(tǒng)計里犯過一個更隱蔽的錯每個線程直接用std::atomicint64_t total.fetch_add(localCount)累加全局計數(shù)。表面上看沒有數(shù)據(jù)競爭結果卻慢得離譜因為這本質上就是所有線程對同一個原子變量反復做 RMW 操作緩存行被反復在不同核心間搬運。統(tǒng)計階段耗時比單線程還高。把局部結果先寫到獨立數(shù)組、最后合并看起來繞了一圈實際是最快的。這也是歸約型算法教科書式的做法局部歸約、全局合并。要可靠記住這一點最簡單的方法是把“原子操作”理解為一把昂貴的隱式鎖它能保證正確性但保證不了性能。5.3 并行度不是越高越好內存帶寬和調度總有過剩時最后一個坑是“線程越多越快”的錯覺。當任務變成純內存搬運或浮點變換時瓶頸往往落在內存帶寬上。比如 480MB 數(shù)據(jù)要被遍歷多輪即便線程數(shù)從 8 加到 32CPU 計算單元可能早就等內存數(shù)據(jù)了增加的線程只是增加競爭和切換。我在排序測試里看到過非常明顯的現(xiàn)象8 線程排序 620ms16 線程反而 750ms就是因為多線程并行排序后的歸并階段需要反復讀寫全部數(shù)據(jù)內存帶寬已經飽和額外線程毫無幫助。考慮到這一點我的建議是給線程池留一個運行時可控的并發(fā)上限比如先跑一輪小規(guī)模預熱測試用數(shù)據(jù)決定線程數(shù)而不是盲信hardware_concurrency。你可以把塊數(shù)和線程數(shù)都作為可配置參數(shù)壓測雙維度組合后固定到配置文件里這樣不同機器上都能快速獲得接近最優(yōu)的性能。另外要提醒的是Ranges 視圖在單線程下惰性求值很安全但一旦切塊并行捕獲的引用和可變狀態(tài)就必須重新審視。比如某個 lambda 里捕獲了局部共享的臨時容器多個線程同時修改就是典型的數(shù)據(jù)競爭。并行化前先自問一句每個塊是否只訪問自己范圍內的數(shù)據(jù)如果答案不明確不要急著上線程池先把數(shù)據(jù)處理成無共享的結構。我在這次重構里的一個非常直接的體會是std::ranges的價值在于把算法意圖寫清楚而開發(fā)者自己控制的線程池和工作隊列則把這些意圖真正轉化為硬件利用率。兩者結合比單純依賴std::execution::par更能貼近業(yè)務需求。最后分享一個操作層面的小技巧如果不想把所有 future 攢在內存里可以像我在 2.3 節(jié)里寫的那樣用原子計數(shù)加條件變量代替 future 列表實測下來在任務數(shù)超過一萬時這種方式對內存占用和喚醒開銷都更友好。希望這套“拆分、調度、合并”的思路能幫你在自己的項目里少走幾條彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月天桃色深爱网| 91男女视频在线观看| 成人婷婷| 91丁香婷婷综合久久欧美| 亚洲天堂aaaa| 思思久久96热在精品国产,| 天堂二区| 成人做爰高潮A片免费视频 | 婷婷六月偷拍| 99热亚洲| 99这里只有精| 在线观看的av| 色婷婷丁香五月在线观看| 97碰免费视频在线| 99九九中文字幕视频| 色爱综合网| 日本高清综合网五月丁香| 華人性愛AV在線| 国产操逼视频网站| 91九色PORNY大屁股| 99色在线观看视频| 五月丁香色综合| 丁香五月日啪| 99精品视频免费在线播放| HD久久精品视频| 99综合网| 五月天婷婷影院| 亚洲综合激情五月久久| www.国产色| 色激情综合狠狠婷婷| 婷婷丁香基地在线| 狠狠人人| 天天拍夜夜爽日日| 五月丁香在线精品| 伊人国产婷婷五月天| 中文字幕激情综合| 五月丁香激情啪啪网| 婷婷不干网| 色综合久久88色综合天天99| 九九青草热| 玖玖九九99| 九九九这里只有精品| 特黄三级又爽又粗又大| 久久六月综合| 欧美日韩成人高清在线| 玖玖综合色| 97AV人人插人人操| 91视频综合网| 亚洲成人一区| 五月丁香 六月婷婷a| 激情婷婷色色| 99视频这里只有免费精品| 人妻久久婷婷| 激情网战码亚洲A| 久9热视频在线观看| 91热网址| 91超级碰碰碰| 五月丁六月香av| 欧美va亚洲va| 热久久视频99| 无码操B| 婷婷射婷婷舔| www.99热精品| www.zbzhongsen.com| 成人视频一区| 成人做爰A片免费看视频 | 97在线视频观看| 丁香五月六月| 超碰97在线观看免费| 婷婷五月综合社区在线| 超碰资源在线| 激情 五月 婷婷 丁香| 97碰久久| 日韩精品无码99| 欧美黄色AA片哗啦啦啦| 色婷婷导航| 色婷精品91| 激情五月丁香五月| 久777| 99超碰欧美| 人人操超碰| 久青草大香蕉| 婷婷 久综合| 玖玖在线资源视频| 狠狠干在线| 夜夜撸日日操| 国产乱人偷精品人妻A片| 国产精品久久久60086| 六月婷婷影院| 亚洲av综合网| 亚洲三A| 亚洲五月六月婷婷| 91色五月| 色婷狠狠| 99热在线观看| 亚洲最大在线| 开心五月天激情网站| 激情丁香图片| 北京熟妇搡BBBB搡BBBB| 九九综合网色全集 | 色婷婷六月开心中文字| 色婷婷导航| 婷婷午夜| 思思99久久| 欧洲激情网站| 久狠狠| 天天干,夜夜爽| 久久桃花网色婷婷| 噜一噜免费视频| 丁香五月激情六月| 夜夜撸天天操| 色婷婷激情五月天| 99热这里只有精品2024| 丁香五月天激情视频| 无码激情精品色婷婷久久久久| 九九热这里| 26uuu最新地址| 国产毛片精品一区二区色欲黄A片| 九九99视频精品| 97人人射| 丁香六月综合激情| 99热99美国在线观看| Se.婷婷五月天| 五月丁花六月丁香综合| 色九月丁香婷婷蜜桃在线观看| 日韩欧美一级大黄网站| 日韩另类在线观看| 色站9/| WWW.夜夜操.com| 五月丁香亭亭天天舔| 午夜爱爱网站| 91视频一起草| 国产白丝在线一区| 日本97在线视频| 国语精品探花| ai97re99一本| 丁香激情婷婷网| 五月丁香激情综合网| 激情综合在线播放| 五月在线| 99久久五月丁香野外| 襙比视频| 超碰只有精品在线| 久久婷婷青青草| 91精品在线看| 99色热| 日本操片| 色五月综合| 欧美超碰人人| 97超碰在线免费观看| 婷婷五月天最新网址| 色天天久婷婷| 婷婷中文字幕网站| 久久午夜理论| 久久婷婷免费| 亚洲精品永久久久久久| 伊人玖玖婷婷| 亚洲不卡| 五月花综合网| 久久婷婷五月综合色丁香花| 欧美日韩一区二区三区四区| 人妻激情视频| 六月婷婷色综合| 日韩色色色色色| 99热9| 91窝窝| 五月婷婷六月开心| 狼人狠狠操| 色色色五月婷| 99热成人永久免费| 成人国产欧美大片一区| WWW.色婷婷.COM| 黄色片avv| 97色婷婷五月天| 一二线视频 另类| 五月丁香啪啪啪啪| 狠狠一日| 人人干女人| 97人人做| 国产3p露脸普通话对白| 丁香五月成人社区| 9精品在线| 天天天天天日| 色婷婷激情五月天| 99成人网一区| 爱穴久久| 丁香五月天啪啪| 综合激情五月丁香9999久久精| 亚洲AV免费在线| 五月丁香婷婷无码A∨| 丁香88AV五月婷婷| 激情AV中文| 免费在线观看av网站| 丁香伊人综合| 亚洲亚洲人成综合网络| 婷婷色五月综合| 91干99| 婷婷色丁香六月| 99热在线播放精品| 97色天堂| 中文人妻主播久久| H亚洲| 91精品综合久久久久久五月丁香| 国产成人AV在线播放| 超碰日日操| 久久婷婷激情| 香蕉AV777XXX色综合一区| 级人人91| 激情五月天视频| 亚洲噜色| 激情六月丁香综合| 操比激情五月综合| 五月丁香婷婷激情爱爱| 色播综合| 狠狠爱综合网| 色综合伊人网| 妻久久人久久| 超碰在线免费9| 一起草性爱不卡视频| 婷婷五月天激情偷拍| 潘金莲AAAAAAAAAA| 五月停亭六月,六月停亭的英语| 五月天天丁香婷婷在线中| caop视频| 噜噜干日本| 五月婷无码| 九九激情| 欧美交换配乱吟粗大25P| 五月天激情日色在线| 免费成人中文字幕| 丁香六月天| 婷婷丁香在线播放| 丁香五月婷婷啪| 超碰一区二区| 激情视频网址| 亚洲第一视频 久久| 99玖玖免费视频| 五月天电影网| 亚洲成人在线播放| z色五月播播久久| www.99热这里只有精品| 婷婷五月天免费视频| 91日本在线观看| 五月婷婷综合激情小说| 综合色播| 夜色综合网| 五月天激情婷婷五月天久久| 色婷婷电影网| 久久久A级视频| 九九色影院| 天天操婷婷| AV天堂淫乩| 99视频在线观看网址| 色丁香五月婷婷| 九月av| 婷婷天天综合| 日韩抽插操逼| 99婷婷| 婷婷第一页| 99国产在线精品视频| 婷婷久久久久| 天天摸天天透天天舔| 狠狠久久婷五月综合色| 欧美群妇大交乱婬网| 91一道本| 日本久久极品| 99精品综合在线| 激情色播| 天天爱天天爽| 色婷婷www| 久色激情| 99热综合网| 热久久视频99| 五月色丁香成人| 成片免费播放| 激情综合无码| 97碰碰人人| 激情AV中文| 激情综合六月| 日韩精品无码99| 婷婷五月丁香六月伊人网| 亚洲婷婷五月| 婷婷综合亚洲| 久久人操| a在线观看| 欧美日韩成人在线观看| 丁香五月婷婷激情四射| 六月丁香大香蕉| 色婷九九九| 中文字幕高清av| 婷婷中文字幕网站| 色停停影院五月天| 五月丁香最新| 97色97干| 亚洲欧洲另类| 精品国产va久久久久| 婷婷性爱| 激情丁香婷婷五月天| AV色婷婷| www色色com| 99riAv1国产在线观看| 五月婷婷日本| 丁香9月婷婷| 色吧网综合| 久热re视频在线观看网站| 熟妇人妻中文字幕无码老熟妇| 五月婷在线| 91色色色| 玩熟女五十AV一二三区| 五月激情婷婷四射| 日韩 中文 欧美| 9有码中文| 欧美日韩123| 色99日韩| 色五月丁香激情视频| 色国产五月| 丁香五月天激情综合网| 五月色色激情网| 五月丁香六月婷婷在线| 狼人狠狠操| 亚洲精品视频在线| 日日操,天天操| 婷婷开心久久| 色五月激情| 99热精品无码| 婷色天堂| 天堂久久婷婷| 丁香五月狠狠综合欧美| 26uuu精品一区二区| 丁香六月婷婷| 99碰碰| 精品久久久久成人码免费动漫 | 五月婷婷丁香啪啪| 五月大香蕉| 97色五月婷婷在线| 婷婷丁香亚洲色综合91| 99热99在线| 婷婷四色五月| 激情久久肏屄视频| 强辱丰满人妻HD中文字幕| 国产精品24r| 久久性刺激| 狠狠大香婷婷爱| 五月丁香六月激情综合在线| 青青草轻轻操| 狠狠干五月| 啪啪五月婷婷| 六月丁香婷婷五月天| 色视五月天婷婷| 五月婷天天搞视频| 亚洲高清在线| 婷婷终合色图| yazhouzonghesese| 9l视频自拍九色9l视频自拍九色9l社区| 色99在线| 婷婷色偷拍| 激情另类综合| 丁香久月| 激情综合丁香六| 九九综合网色全集 | 色婷婷玖玖影院| 亚洲五月天,激情视频| 五月婷婷在线网站| 超碰99在线观看| 丁香8月手机综合| 4399在线日本A片| 热久久66| 五月天激情小说| 1囯产午夜仑鲁鲁| 无码少妇高潮喷水A片免费| 色五月婷婷天堂| 天天爽成人综合网站| 无人精品在线视频| AAA级久久久精品| 婷婷丁香五月91| 婷婷九月激情| 五月丁香婷婷六月| 色噜噜97视频在线观看| 亚洲激情.com| 日本操B视频| 91丨九色丨熟女|新版| 五月婷婷手机在线| 熟妇无码乱子成人精品| 婷婷激情综合色五月久久图片| 色综合性视频| 色婷婷丁香五月| 91九色小视频| 亚洲婷婷欧美婷婷| 五月天丁香花婷婷| 好激情在线综合网| 国产日韩精品SUV| 97碰碰视频在线观看| 九九热免费| 五月丁香人妻| 亚洲综合婷婷| 色丁香五月天| 久久婷五月综合| 99热99色| 国内久久婷婷| 日本熟女内射| 淫视馆av三区| 婷婷五月天成人综合网| 五月天丁香婷婷久久九| 日韩不卡123| 性婷婷| 九九色综合| 4399亚洲视频| 高清不卡一区| 色婷婷婷婷| 99热只有| 操B无码视频国语| 天天爽—爽| 久热免费| 九九色逼| 激情综合五月婷婷| site:wpjngj.com| 色婷婷综合网| 激情五月婷黄版| 色色婷| 中文无码婷婷| www.婷婷六月天| 丁香色色网| 成人看片网站| 婷婷五月成人色综合| 婷婷在线播放| 97深爱伊人综合| 天天色情站| 丁香花五月天| 神马久久五月天| 五月丁香六月综合基地| 五月丁香婷婷婷激情爱爱| SS丁香五月婷婷| 日韩99无码| 丁香五月欧美激情| 伊人9在线| 久久伦乱| 五月天色婷伊人| 综合网激情| 丁香六月色香蕉视频| 天天日天天插| 欧美性猛交99久久久久99按摩| www.久久五月天.com| 欧美顶级少妇做爰HD| 色婷婷影音| 日本色超碰| 丁香婷婷情色五月天| 婷婷久久性爱| 日本99热| 婷婷综合精品视频97| 99视频91| 国产毛片精品一区二区色欲黄A片| 五月婷婷综合激情| 中文字幕高清av| 久久人人超| 中文字幕婷婷五月天| 白人荫道BBWBBB大荫道| 婷婷五月天色播| 婷婷激情在线| 99在线精品免费视频| AⅤ网站在线看| 日本色99| 色人久久| 丁香久久| 99色色| 91狠狠综合久久| 超碰高清在线| 9l视频自拍9l九色9l成人| 亚洲99精品欧美一区| 99热这里只有精品1998| 天天成人丁香美女AV| 日日干日日s| 婷婷激情五月天在线| 国产高清视频91九九九久久久| 五月激情婷婷综合| 日日操日日射| 任你爽视频| 久热无码| 五月婷婷丁香啪啪| 五月丁香六月停停| 在线中文av| 2050人人操免费工开爱 | 五月天无码| 色爱爱综合网| 六月婷婷综合| 色五月婷婷网| 五月婷婷精品视频| 婷婷五月丁香综合亚洲 | 99热国产精品| 婷婷五月天激情视频| www.maotanji.com| 九一娱乐在线观看视频| 丁香五月欧美| 九月激情综合| 丁香六月无码| 久色视频首页| 亚洲激情网| 激情综合网五月激情网| 五月丁香色五月| 婷婷久久综| 偷拍九九热| 色99网站| 久久只有18视频| 色婷婷五月天激情在线播放| 色丁香五月天| 中文字幕黄色电影网址| 天天日日| 图片区 小说区 区 亚洲五月 | 五月天堂六月丁香亚州中文字幕久久| 久久99久久99精品免视看婷婷| 狠狠操综合| 激情丁香五月激情婷婷| 欧美va亚洲va| 成人短视频在线| 婷婷五月天AV在| 99久久网站| 深爱激情五月天| 91干网站| 99热乎| 五月丁香花激情综合网| www.狠狠操| 99久久婷婷国产综合| 亚洲超碰中文字幕| 91碰碰| 亚洲AV色婷婷人禽五月天| 久9热| 亚洲无码影片| 婷婷久热| 五月激情六月丁香| 激婷网| 成人av在线网站| 丁香五月天啪啪激情综合网| 国产亚洲在线| 99热全是精品| 99在线观看亚洲| 伊人在线视频| 久草丁香婷婷1024| 五月婷婷与六月丁香图片激情| 九九99视频| 亭亭玉月丁香| 伊久久婷婷| 操一操| 久久性爱视频| 棕合影院色色| 五月丁香综合激情网| 丝袜大香蕉| 99re视频在线播放| 五月天亚洲色| 噜噜噜久久亚洲精品国产品91| 五月婷婷福利| 综合网天天| 免费在线观看欧美激情xx小视频| 99视频精品在线| www激情| 99这里有精品视频| 玖玖色综合网| 亚洲精品成人| 成人美女网| 97碰碰九九视频| 啪啪啪丁香五月| 99久免费视频| 99五月婷| 天天日天天添| 森林影视大全,最好看的2019年视频 | 中文字幕乱码亚洲精品一区| 夜色五月天| 丁香五月欧美婷婷| 婷婷五月天久久综合88| 97色婷| 成人天天爽| 婷婷五月天,影院| 丁香激激情网| 欧美婷婷成人| 色五月xxx| 插插网爽妇五月丁香| 色5月婷婷| 26uuu日韩| 亚洲丁香花色| 91人在线观看| 7777精品伊人久久久大香线蕉最新版| www色色色com| 99性感视频| 可以免费观看的av| 久久人人看| 人碰人人人玩91| 97久操视频| 五月丁香成人网| 天天碰天天插天天操| 欧美日本另类| 天天综合网站| 久久久久久久久久久久久久久久一道本| 96精品国产综合久久久久久| 综合久久婷婷| 日日狠狠久久偷偷四色综合免费 | 国产又粗又大又爽又黄| 婷婷六月插屄激情| 久久婷婷网址| 操逼六区| 亚洲激情图文小说| 少妇AB又爽又紧无码网站| 欧美精品久久久久久视频观看| 婷婷五月天.com| 婷婷成年人免费视频| 日日操夜夜撸| 欧美超碰亚洲| 丁香五月成人论坛| 9月色婷婷| 强辱丰满人妻HD中文字幕| 超级碰碰碰91| 深爱丁香激情| 亚洲综合五月| 熟美女麻豆| 六月伊人婷婷| 91丨九色丨高潮丰满日本| 一二线视频 另类| 九色91视频| 亚洲综合在线丁香五月| 婷婷五月天开心网| 久久九九激情五月天 | 玖玖激情五月天| 超碰AAAAAAV| 色热久| 在线看AV| 婷婷六月丁香久| 色五月五月婷婷| 色色五月婷婷狠狠| 天天曰夜夜爽| 丁香五月色五月| 久9久视频精品| site:xmssd.com| 五月激情小说| 中文字幕高清av| 丁香狠狠| 久久综合五月天| 婷婷五月天AV在线| 国产综合网在线| 青柠影视免费高清电视剧| 日日噜狠狠| 日日爽夜夜爽| 人人草人人舔| 青青草五月天| 懂色AⅤ| AA片在线观看视频在线播放| 亚洲色9| 婷婷五月天堂| 91狠狠色色丁香婷婷综合久久| 色色哒五月婷婷六月丁香| 国产3p露脸普通话对白| 五月婷婷深深爱爱| 五月婷婷中文字幕| 97狠狠色| a在线观看| 免费亚洲成人电影AV| 涩涩涩五月天| 婷婷丁香先锋资源网站| 深情五月天| 五月天开心网| 色激情综合狠狠婷婷| 97操碰| 婷婷五月色情天| 91日日日| 超碰二区| 婷婷综合网站| 另类精品视频在线观看| 色播婷婷大香蕉| 五月婷婷丁香六月| 噜噜噜狠狠色综合| 91色综合| 噜噜噜噜婷婷五月天| 久久久久er热| 高清激情av在线观看| 最近免费中文字幕大全高清大全1| 丁香花五月天激情| 99热这里只有精品66| 91啪啪| 久久与婷婷| 日韩无码专区| 99综合网| 99热精品6| 激情丁香五月| 久久婷丁香五月| 高清视频一区| 日日日日日| 婷婷成人综合免费视频| 久久久五月天| 亚洲精99| 韩国中文字幕91| 婷婷开心久久| 97欧美在线| 婷婷在线视频| 丁香婷婷射| 国产av第一专区| 五月亭亭狠狠| 欧美熟女99| 亚洲无码99| 天天天摸夜夜夜玩| www91在线| 国产成人网| www久久99| 五月天婷婷影院影院| 夜色爱爱亚洲| www久久99| 激情五月婷婷丁香六月| 99精品无码| 激情色视频| 久久久久久久久久91| 久久人人妻| 少妇人妻凹凸视频| www.婷婷,com| 五月天开心网| 99免费在线| 97干综合网| 国产精产国品一二三在观看| 激情綜合W W W,激情五月天| 99日本精品视频热| 丁香婷婷欧美综合| 夜夜夜夜撸夜夜操| 天天干,天天操,天天射| 99精品久久| 激情五月,激情综合网| 婷婷丁香五另类网站| 亚洲精品无人区| 激情综合五月| 99热在线爱| 天综合日日夜综合7799| www.丁香五月| 久热免费视频| 五月婷婷激情色情网| 伊人九九综合| 五月丁香六月婷综合成人综合| 五月婷婷六月激情网| 色婷婷啪啪啪啪啪啪| 99自拍视频| 婷婷五月天伊人| 婷婷五月天Av| 午夜激情婷婷| 亚洲一区二区 成人网站戴套| 婷婷午夜天| 婷婷五月天第三页| 六月丁香激情最新更新| 97干网站| 成人做爰A片免费看视频| 丁香婷婷噜噜| 丁香婷五月天| 这里只有精品亚洲| 亚洲AV无码成人精品区电影网| 202丰满熟女妇大| AV在线大香蕉| 涩涩涩五月天| 日日夜夜爽爽| 激情婷婷五月女| 精品牛仔裤超碰| 曰本aaaaaa丈片| 麻豆AV一区二区三区| 丁香六月婷婷| 夜夜大香蕉婷婷丁香| 5月婷婷激情网| 五月天婷婷六月| 婷婷五月深情丁香深爱日韩| 亚洲人妻Av| 91中文狠狠综合| 婷婷久久网| 激情五月综合网最新| 久久久久9| ′久久99一| 超级碰碰视频无码| 秋霞少妇AV网站| 六月丁香五月激情网| 97色色色色| 中文字幕在线不卡| 激情文学第四色婷婷丁香五月| 啪啪操网| 狠狠狠狠草草| 久久九网| 九九精品免费视频99| 五月婷婷激情综合| 99这里都是精品| 永久精品| 俺去也婷婷| 成人无码精品1区2区3区免费看| 性爱综合网| 99色视频| 七月丁香五月婷婷在线| 超碰cap| 色色色宗合网| 91xxxx九色| 婷婷五月天中文字幕| 色五婷婷| 婷婷中文无码| 99色天堂| 区区久久妻| 99热这里只有精品26| 丁香综合婷婷开心激情网| 超碰在线人妻| 极品色丁香| 99在线视频精品| 激情六月丁香| 色噜噜狠狠色综合无码久久欧美| 92国产福利| 亚洲激情婷婷| 91色久| 激情5月舔| 五月天免费色| 99热日韩| 九九干视频| 天天操比比| 久草热8精品视频在线观看| 狠狠婷婷日韩| 欧美日韩国产一区| 久久久妻人人人| 色婷婷六月开心中文字| 99热只有这里有精品| 久色网址| 99噜噜噜在线播放| 久久婷婷东京热大香樵| 99激情在线| 婷婷久久夜| 深爱激情丁香五月| 超碰av在线| 四季8848精品成人免费网站| www.com色播五月天| 一起草AV| 天天摸夜夜夜| 五月丁香婷婷在线| 中文字幕无线久必| 在线观看996精品| 日日操夜夜爽白洁| 在线可以看的av网址| 人人澡玖玖一| 丁香六月婷婷色XXXXX| 伊人久久婷婷| 蜜臀av 粉嫩av 懂色av | 丁香五月婷婷骚视屏| 色五月婷婷影院| 国产伦亲子伦亲子视频观看| 色月丁| 天天看片日日夜夜| 99re6久热只有精品6在线直播| 免费视频99| YW无码| 婷色人人狠| 天天插插天天| 五月婷婷性爱| 99热丁香五月| 五月天久久www| 中文字幕av在线| 久久久高清| 激情久久久| 亚洲av骚货| 亚洲亚洲人成综合网络| www.maotanji.com| 激情九九这里只有精品| 狠狠干婷婷| 五月激情久久| 五月激情丁香五月宗合| 大香蕉五月丁香| 国产av第一专区| 婷婷的激情五月| 欧美 日韩 成人| 2025超碰| 婷婷五月天激情网址| 丁香五月激情网| 久久久久久久久久久-久五月天婷婷| 噜噜噜狠狠色综| 久久久精品色色色| 日韩成人无码| 99re在线观看| 久久综合首页| 九月性爱网| 内射丰满人妻| 激情五月天综合网| 97色婷婷五月天| 五月天.com| 97超级啪啪在线观看| 琪琪理论片| 激情AV| 久9热视频| 5月丁香婷婷激情网| 色婷婷网大全在线| 天天天天天色| 99超级碰免费视频| 久久久网站| 9999三级片| 日本99色| 天天干天天干天天操| 五月天婷婷激情六月久久| 色婷婷综合中心| 99精品免费| 亚洲色涩视频| 五月天.com| 久久9精品| 久久婷婷色综合| 五月激情啪啪啪| 日本九九视频| 亚洲丁香五月天视频| 综合九九日本| www色婷婷com| 色色色1网址| 五月丁香婷婷三级| 国内精品免费一区二区2009| 九九久久五月天综合伊人| 极品少妇XXXX精品少妇偷拍| 亚洲性图一区二区三区| 天天爱天天操| 天天摸,天天爽| 色综合天天| 99这里只有精品视频在线| 色情综合| site:jszngf.com| 五月丁香激情综合| 婷久看人爽| 欧美日韩精品人妻狠狠躁免费视频| 婷婷色五月噜噜| 亚洲综合五月天| 婷婷五月综合欧美在线播放| 国产精自产拍久久久久久蜜 | 五月婷婷色播| 99久久99热| 老师的粉嫩小又紧水又多A片视频 欧美三级巜人妻互换 | 婷婷五月在线影院| 九色色| 在线播放成人| 播五月丁香三月婷婷| 99热天堂| 色欲色香综合网| 婷婷四月 成人 狠狠干| 嫩草AV久久伊人妇女超级A| 天天肏天天插| 26uuu成人网| 九九视频在线观看| 99热免费精品| 久久狠狠干| 337p午夜影院| 九九色插| 久大香蕉| 久久永久网址| 九九九九精品精| http://www.sd-xiangsu.com/| 五月叮香啪| av在线资源| 99在线免费视| 色情成人五月天| 婷婷六月综合基地| 99久久免费性爱视频`| 国产SUV精品一区二区6| 婷婷五月天免费视频在线观看| 人人妻人人澡人人爽| 五月丁香激情综合网| 色。 日日日| 91VIP在线观看| 日本色99| 天天粽合合合合| 七七色综合| 99re免费精品视频| 很很操很很操| 丁香五月婷婷激情中文| 大香蕉久艹| 春色激情第四色| CAoub青青超碰| 99成人在线观看| 色区域网站视频| 婷婷伊人综合中文字幕| 青柠影视免费高清电视剧| www.henhengan| 丁香六月婷婷激情综合| 91日在线视频| 黄网在线播放| 五月开心激情网| 激情六月丁香| 一区二区成人电影免费播放| 丝袜激情网| 久久综合伊人综合在线| 天天干天天曰天天射| 91狠狠色丁香婷婷综合久久| 99热99热在线| 激情婷婷色小说| 991精品在线视频| 六月色婷婷欧美| 九九色院| 婷婷99狠狠躁天天久久久九九九| 日本三久久| 丁香五月婷婷乱| 欧美日韩123| 69热91天堂| 99久久激情视频| 99re热免费观看视频精品| 久久五月天激情美女| 丁香婷婷综合色五月激情国产基地| 99热这里只有精品55| 亚州色色色| 密臀久久| 亚洲综合1024| 91久久人人操| 欧美韩国日本| 超碰成人在线观看| 99热在线成人网站| aaaaaa片| 色伊人婷婷| 黄色AAAAAAA| 无码免费人妻A片AAA毛片西瓜 | 丁香五月23111| 538午夜激情| 丁香六月婷婷开心婷婷网| 爱99干99| 成人丁香| 激情伊人| 成年人丁香五月| www激情网| 五月婷婷丁香深深爱| 亚洲无码11| 久久丁香九| 熟女色色一区二区| 亚洲综合五月天| 婷婷天堂综合| 成人在线日韩欧美| 久久久精品色色色| 99aese| 人妻操逼| 五月天激情国产综合婷婷婷就去爱| 91se在线观看| Www.se.久久| 激婷网| 亚洲精品又粗又大又爽A片 | 99视频超级精品| 九月影院義母在线播放| 日韩一级网站| 色停停影院五月天| 日韩欧美成人一区二区三区| 五月天婷婷小说| 99免费热视频在线| 亚洲区视频| 国产三级片91| 超碰国产在线观看| 婷婷五月六月丁香| 99热6这里只有精品| 99国产小视频| 热99精品视频| 色操b| 人人做人人看人人摸| Va另类视频| VA婷婷亚洲| 亚洲久久婷婷丁香五月天| 开心五月婷婷六月丁香| 日韩好吊操| 77799热| 九九免费视频在线| 99视频久久免费视频| 99ER热精品视频| 午夜精品久久久久久久爽| 国产成人AV| 538在线精品| 99精品丁香五月| 爱iii做iiii日| 亚洲超碰中文字幕| 中文字幕av久久爽| 五月天久草| 激情五月天色婷婷综合| 大香蕉久久婷婷精品综合| 激情亭亭五月| 色呦呦美女| 大香蕉520| 日本女天天爽| 天天模,夜夜模夜夜爽| sewuyuejiqingwang| 五月婷婷激情中心| www.五月天社区| 第五色婷婷| 日韩久热| 久久婷婷色| 亚洲日本韩国| 丁香花大香蕉婷婷综合| 9 1大香蕉| 五月丁香激情综合六月涩涩爱| 大香蕉网站,大香蕉综合| 色色色色色热| 色播五月丁香综合| 久久五月激情| 99热精品在线| 狠狠干综合| 国产精产国品一二三在观看| 69热91天堂| 99久热精品在线| 色五月激情网| 婷婷六月中文字幕| 婷婷激情社区| 99热播放| 思思99热| 新男人天堂人妻| 九九热10| 一本大道嫩草AV无码专区| 色五月天成人| 5月婷婷激情6月| 欧洲永久精品| 五月丁香琪琪| 极品五月天| 五月丁久久| 婷婷五月色| 日韩精品999| 丁香五月成人社区| 天堂AV在线看| 五月色婷婷综合丁香精品无遮挡| 色99视频| 久久电影4399| 99热九九在线| www...com黄在线观看| 欧美日韩中文国产一区发布| 日韩成人精品中文字幕| 色五月av| 亚洲婷婷五月天激情| 丁香五月欧美色综合| 激情五月天开心网丁香无码| www.99热| 九九久久五月天| 婷婷五月天Av| 在线观看欧美| 九九综舍久久| 日韩一级网站| 亚洲免费av观看| 久操大屁股女人av| 91n啪啪| 丁香av网| 亚洲成人精品三区| 五月丁香另类网| 亚洲va久久久噜噜噜久久天堂| 综合天堂AV久久久久久久| 天天干天天爽| 第九色区av天堂| 69精品人人人人| 国产精产国品一二三在观看| 极品少妇高潮啪啪AV无码| 久久九九99| 丁香五月激情网| 亚洲人妻av伦理| BBWCUCKOLD精品熟妇| 久久性爱视频| 日日干四虎| 99综合五月免费视频色婷婷| 国产内射婷婷| 潮汕成人AV片在线| 密视AV综合在线| 91热网址| 亚洲精品国产setv| 成人av免费观看| 久久五月天婷婷视频| 激情婷婷五六月天| 色婷婷色五月色丁香| 蜜臀av在线成人电影| 欧美日韩AAA| 婷婷五月天色播| 99这里有精品视频| 亚洲五月婷婷| 97色婷婷| 国产三级在线播放| 大香蕉狼人久久| 色色五月婷婷| 开心五月激情站| 久 久9 9 热 视 频| 欧美性爱一区| 丁香六月婷| 久久人妻超碰一区| 97在线日本| 热九九精品| 79成人网| 日本欧美成人片AAAA| 丁香五月Av| 久久五月婷6 9| 性爱五月婷婷| 99热网站| 激情小说之五月| 亚洲激情综| 久久丁香| www.九九婷婷| 99精品在线播放| 激情综合亚洲色婷婷五月| 婷婷五月天播播| 99这里有精品视频| 这里只有精彩视频| 欧美日韩国产日本精品四虎网网站物| 天天干com| 91碰碰视频在线观看| 天天综合图片| 亚洲V国产V欧美V久久久久久| 伊人五月天日日夜夜久久久天天| 91蜜桃婷婷狠狠久久综合9色| 综合激情在线视频| 激情综合色婷婷啪啪六月天| 人碰91| 精品久久这里热66| 超碰中文字幕在线| 激情五月天小说网| 五月天伊人久久| 人人干人人看| 激情综合在线播放| 99视频| 色爽九九| 91婷婷丁香五月| 天天操加勒比| 婷婷五月天色色| 99视频精品全部免费看| 夜夜干 夜夜操| 丁香五月天色综合| 黑人糟蹋人妻HD中文字幕| 情欲综合网| 亚洲中字AV电影在线网站| 丁香五月天综合网| 大香蕉视频99| 丁香五月天堂| 99视频在线播放大全| 久久婷婷综| 五月丁香大香蕉| 99热66| 五月丁香色婷| 9999热精品| 色五月色图| 玖玖国产视频一区| 国产精品18久久久| 精品99只有。| 1024你懂的欧美曰韩| 天天干一干| 99操逼| 99网| 色婷婷色五月天| 日本成人综合| 99热免费观看| caopeng97日韩| 五月色婷丁香| 久久色9| 天天爽夜夜爽夜夜爽精品| 熟妇内谢69XXXXXA片| 凹凸操Av| 天天综合五月| 色九区| 激情五月天www| 六月婷婷综合久久| www.婷婷| 激情五月婷婷色播网| 在线中文亚洲| 97人人干| 九九热视频精品| 日本久久高清| 国产肥白大熟妇BBBB视频| 一本久道综合色婷婷五月| 久久婷丁香五月| 年轻的妺妺伦理HD中文| 激情五月天激情小说| www.99热视频| 九九九激情综合| www.狠狠操| 九九精品片一| 丁香五月天堂亚洲社区| 欧美日韩123| 婷婷涩涩网| 丁香五月婷婷欧美激情-中文天堂最新版在线观看 | 六月天六月婷| 99啪啪视频| 五月天五月婷五月激情网| 日韩另类在线观看| 欧美成人精品A片免费一区99| 欧美丁香婷婷五月天| 激情五月综合网| 国产精品黑丝| www,26uuu,c0m,色情| 日韩综合久| 五月激情四射婷婷丁香| 婷婷狠狠香蕉综合| av大香蕉| 终合激情网|