久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

深入浅出 Linux 惊群:现象、原因和解决方案

發布時間:2024/4/11 linux 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 深入浅出 Linux 惊群:现象、原因和解决方案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

hello,?大家好,我是Alex,今天分享一篇關于socket編程里面經典問題:驚群問題,文章深入分析了驚群問題的現象和其根本原因,并給出一些很好的解決方案,值得我們參考和學習,通過文章,我們可以學習到

  • 徹底理解驚群問題

  • epoll底層實現原理

  • epoll的ET和LT區別

  • socket的reuseaddress和reuseport場景

  • socket編程優化等

"驚群"簡單地來講,就是多個進程(線程)阻塞睡眠在某個系統調用上,在等待某個 fd(socket)的事件的到來。當這個 fd(socket)的事件發生的時候,這些睡眠的進程(線程)就會被同時喚醒,多個進程(線程)從阻塞的系統調用上返回,這就是"驚群"現象。"驚群"被人詬病的是效率低下,大量的 CPU 時間浪費在被喚醒發現無事可做,然后又繼續睡眠的反復切換上。本文談談 linux socket 中的一些"驚群"現象、原因以及解決方案。

1. Accept"驚群"現象

我們知道,在網絡分組通信中,網絡數據包的接收是異步進行的,因為你不知道什么時候會有數據包到來。因此,網絡收包大體分為兩個過程:

[1]?數據包到來后的事件通知 [2]?收到事件通知的Task執行流,響應事件并從隊列中取出數據包

數據包到來的通知分為兩部分:

(1)網卡通知數據包到來,中斷協議棧收包;

(2)協議棧將數據包填充 socket 的接收隊列,通知應用程序有數據可讀,這里僅討論數據到達協議棧之后的事情。

應用程序是通過 socket 和協議棧交互的,socket 隔離了應用程序和協議棧,socket 是兩者之間的接口,對于應用程序,它代表協議棧;而對于協議棧,它又代表應用程序,當數據包到達協議棧的時候,發生下面兩個過程:

[1]?協議棧將數據包放入socket的接收緩沖區隊列,并通知持有該socket的應用程序; [2]?持有該socket的應用程序響應通知事件,將數據包從socket的接收緩沖區隊列中取出

對于高性能的服務器而言,為了利用多 CPU 核的優勢,大多采用多個進程(線程)同時在一個 listen socket 上進行 accept 請求。多個進程阻塞在 Accept 調用上,那么在協議棧將 Client 的請求 socket 放入 listen socket 的 accept 隊列的時候,是要喚醒一個進程還是全部進程來處理呢?

linux 內核通過睡眠隊列來組織所有等待某個事件的 task,而 wakeup 機制則可以異步喚醒整個睡眠隊列上的 task,wakeup 邏輯在喚醒睡眠隊列時,會遍歷該隊列鏈表上的每一個節點,調用每一個節點的 callback,從而喚醒睡眠隊列上的每個 task。這樣,在一個 connect 到達這個 lisent socket 的時候,內核會喚醒所有睡眠在 accept 隊列上的 task。N 個 task 進程(線程)同時從 accept 返回,但是,只有一個 task 返回這個 connect 的 fd,其他 task 都返回-1(EAGAIN)。這是典型的 accept"驚群"現象。這個是 linux 上困擾了大家很長時間的一個經典問題,在 linux2.6(似乎在 2.4.1 以后就已經解決,有興趣的同學可以去驗證一下)以后的內核中得到徹底的解決,通過添加了一個 WQ_FLAG_EXCLUSIVE 標記告訴內核進行排他性的喚醒,即喚醒一個進程后即退出喚醒的過程,具體如下:

/**?The?core?wakeup?function.?Non-exclusive?wakeups?(nr_exclusive?==?0)?just*?wake?everything?up.?If?it's?an?exclusive?wakeup?(nr_exclusive?==?small?+ve*?number)?then?we?wake?all?the?non-exclusive?tasks?and?one?exclusive?task.**?There?are?circumstances?in?which?we?can?try?to?wake?a?task?which?has?already*?started?to?run?but?is?not?in?state?TASK_RUNNING.?try_to_wake_up()?returns*?zero?in?this?(rare)?case,?and?we?handle?it?by?continuing?to?scan?the?queue.*/ static?void?__wake_up_common(wait_queue_head_t?*q,?unsigned?int?mode,int?nr_exclusive,?int?wake_flags,?void?*key) {wait_queue_t?*curr,?*next;list_for_each_entry_safe(curr,?next,?&q->task_list,?task_list)?{unsigned?flags?=?curr->flags;if?(curr->func(curr,?mode,?wake_flags,?key)?&&(flags?&?WQ_FLAG_EXCLUSIVE)?&&?!--nr_exclusive)break;} }

這樣,在 linux 2.6 以后的內核,用戶進程 task 對 listen socket 進行 accept 操作,如果這個時候如果沒有新的 connect 請求過來,用戶進程 task 會阻塞睡眠在 listent fd 的睡眠隊列上。這個時候,用戶進程 Task 會被設置 WQ_FLAG_EXCLUSIVE 標志位,并加入到 listen socket 的睡眠隊列尾部(這里要確保所有不帶 WQ_FLAG_EXCLUSIVE 標志位的 non-exclusive waiters 排在帶 WQ_FLAG_EXCLUSIVE 標志位的 exclusive waiters 前面)。根據前面的喚醒邏輯,一個新的 connect 到來,內核只會喚醒一個用戶進程 task 就會退出喚醒過程,從而不存在了"驚群"現象。

2. select/poll/Epoll "驚群"現象

盡管 accept 系統調用已經不再存在"驚群"現象,但是我們的"驚群"場景還沒結束。通常一個 server 有很多其他網絡 IO 事件要處理,我們并不希望 server 阻塞在 accept 調用上,為提高服務器的并發處理能力,我們一般會使用 select/poll/epoll I/O 多路復用技術,同時為了充分利用多核 CPU,服務器上會起多個進程(線程)同時提供服務。于是,在某一時刻多個進程(線程)阻塞在 select/poll/epoll_wait 系統調用上,當一個請求上來的時候,多個進程都會被 select/poll/epoll_wait 喚醒去 accept,然而只有一個進程(線程 accept 成功,其他進程(線程 accept 失敗,然后重新阻塞在 select/poll/epoll_wait 系統調用上。可見,盡管 accept 不存在"驚群",但是我們還是沒能擺脫"驚群"的命運。難道真的沒辦法了么?我只讓一個進程去監聽 listen socket 的可讀事件,這樣不就可以避免"驚群"了么?

沒錯,就是這個思路,我們來看看 Nginx 是怎么避免由于 listen fd 可讀造成的 epoll_wait"驚群"。這里簡單說下具體流程,不進行具體的源碼分析。

2.1 Nginx 的 epoll"驚群"避免

Nginx 中有個標志 ngx_use_accept_mutex,當 ngx_use_accept_mutex 為 1 的時候(當 nginx worker 進程數>1 時且配置文件中打開 accept_mutex 時,這個標志置為 1),表示要進行 listen fdt"驚群"避免。

Nginx 的 worker 進程在進行 event 模塊的初始化的時候,在 core event 模塊的 process_init 函數中(ngx_event_process_init)將 listen fd 加入到 epoll 中并監聽其 READ 事件。Nginx 在進行相關初始化完成后,進入事件循環(ngx_process_events_and_timers 函數),在 ngx_process_events_and_timers 中判斷,如果 ngx_use_accept_mutex 為 0,那就直接進入 ngx_process_events(ngx_epoll_process_events),在 ngx_epoll_process_events 將調用 epoll_wait 等待相關事件到來或超時,epoll_wait 返回的時候該干嘛就干嘛。這里不講 ngx_use_accept_mutex 為 0 的流程,下面講下 ngx_use_accept_mutex 為 1 的流程。

[1]?進入ngx_trylock_accept_mutex,加鎖搶奪accept權限(ngx_shmtx_trylock(&ngx_accept_mutex)),加鎖成功,則調用ngx_enable_accept_events(cycle)?來將一個或多個listen fd加入epoll監聽READ事件(設置事件的回調函數ngx_event_accept),并設置ngx_accept_mutex_held = 1;標識自己持有鎖。 [2]?如果ngx_shmtx_trylock(&ngx_accept_mutex)失敗,則調用ngx_disable_accept_events(cycle, 0)來將listen fd從epoll中delete掉。 [3]?如果ngx_accept_mutex_held = 1(也就是搶到accept權),則設置延遲處理事件標志位flags |= NGX_POST_EVENTS;?如果ngx_accept_mutex_held =?0(沒搶到accept權),則調整一下自己的epoll_wait超時,讓自己下次能早點去搶奪accept權。 [4]?進入ngx_process_events(ngx_epoll_process_events),在ngx_epoll_process_events將調用epoll_wait等待相關事件到來或超時。 [5] epoll_wait返回,循環遍歷返回的事件,如果標志位flags被設置了NGX_POST_EVENTS,則將事件掛載到相應的隊列中(Nginx有兩個延遲處理隊列,(1)ngx_posted_accept_events:listen fd返回的事件被掛載到的隊列。(2)ngx_posted_events:其他socket fd返回的事件掛載到的隊列),延遲處理事件,否則直接調用事件的回調函數。 [6] ngx_epoll_process_events返回后,則開始處理ngx_posted_accept_events隊列上的事件,于是進入的回調函數是ngx_event_accept,在ngx_event_accept中accept客戶端的請求,進行一些初始化工作,將accept到的socket fd放入epoll中。 [7] ngx_epoll_process_events處理完成后,如果本進程持有accept鎖ngx_accept_mutex_held = 1,那么就將鎖釋放。 [8]?接著開始處理ngx_posted_events隊列上的事件。

Nginx 通過一次僅允許一個進程將 listen fd 放入自己的 epoll 來監聽其 READ 事件的方式來達到 listen fd"驚群"避免。然而做好這一點并不容易,作為一個高性能 web 服務器,需要盡量避免阻塞,并且要很好平衡各個工作 worker 的請求,避免餓死情況,下面有幾個點需要大家留意:

[1]?避免新請求不能及時得到處理的餓死現象工作worker在搶奪到accept權限,加鎖成功的時候,要將事件的處理delay到釋放鎖后在處理(為什么ngx_posted_accept_events隊列上的事件處理不需要延遲呢??因為ngx_posted_accept_events上的事件就是listen fd的可讀事件,本來就是我搶到的accept權限,我還沒accept就釋放鎖,這個時候被別人搶走了怎么辦呢?)。否則,獲得鎖的工作worker由于在處理一個耗時事件,這個時候大量請求過來,其他工作worker空閑,然而沒有處理權限在干著急。 [2]?避免總是某個worker進程搶到鎖,大量請求被同一個進程搶到,而其他worker進程卻很清閑。Nginx有個簡單的負載均衡,ngx_accept_disabled表示此時滿負荷程度,沒必要再處理新連接了,我們在nginx.conf曾經配置了每一個nginx worker進程能夠處理的最大連接數,當達到最大數的7/8時,ngx_accept_disabled為正,說明本nginx worker進程非常繁忙,將不再去處理新連接。每次要進行搶奪accept權限的時候,如果ngx_accept_disabled大于0,則遞減1,不進行搶奪邏輯。

Nginx 采用在同一時刻僅允許一個 worker 進程監聽 listen fd 的可讀事件的方式,來避免 listen fd 的"驚群"現象。然而這種方式編程實現起來比較難,難道不能像 accept 一樣解決 epoll 的"驚群"問題么?答案是可以的。要說明 epoll 的"驚群"問題以及解決方案,不能不從 epoll 的兩種觸發模式說起。

3 Epoll"驚群"之 LT(水平觸發模式)、ET(邊沿觸發模式)

我們先來看下 LT、ET 的語意:

[1]?LT?水平觸發模式 只要仍然有未處理的事件,epoll就會通知你,調用epoll_wait就會立即返回。 [2]?ET?邊沿觸發模式 只有事件列表發生變化了,epoll才會通知你。也就是,epoll_wait返回通知你去處理事件,如果沒處理完,epoll不會再通知你了,調用epoll_wait會睡眠等待,直到下一個事件到來或者超時。

LT(水平觸發模式)、ET(邊沿觸發模式)在"驚群"問題上,有什么不一樣的表現么?要說明這個,就不能不來談談 Linux 內核的 sleep/wakeup 機制以及 epoll 的實現核心機制了。

3.1 epoll 的核心機制

在了解 epoll 的核心機制前,先了解一下內核 sleep/wakeup 機制的幾個核心概念:

[1]?等待隊列?waitqueue 隊列頭(wait_queue_head_t)往往是資源生產者 隊列成員(wait_queue_t)往往是資源消費者 當頭的資源ready后,?會逐個執行每個成員指定的回調函數,來通知它們資源已經ready了 [2]?內核的poll機制 被Poll的fd, 必須在實現上支持內核的Poll技術,比如fd是某個字符設備,或者是個socket, 它必須實現file_operations中的poll操作, 給自己分配有一個等待隊列頭wait_queue_head_t,主動poll fd的某個進程task必須分配一個等待隊列成員, 添加到fd的等待隊列里面去, 并指定資源ready時的回調函數,用socket做例子, 它必須有實現一個poll操作, 這個Poll是發起輪詢的代碼必須主動調用的, 該函數中必須調用poll_wait(),poll_wait會將發起者作為等待隊列成員加入到socket的等待隊列中去,這樣socket發生事件時可以通過隊列頭逐個通知所有關心它的進程。 [3]?epollfd本身也是個fd,?所以它本身也可以被epoll

epoll 作為中間層,為多個進程 task,監聽多個 fd 的多個事件提供了一個便利的高效機制,我們來看下 epoll 的機制圖:

從圖中,可以看到 epoll 可以監控多個 fd 的事件,它通過一顆紅黑樹來組織所有被 epoll_ctl 加入到 epoll 監聽列表中的 fd,每個被監聽的 fd 在 epoll 用一個 epoll item(epi)來標識。

根據內核的 poll 機制,epoll 需要為每個監聽的 fd 構造一個 epoll entry(設置關心的事件以及注冊回調函數)作為等待隊列成員睡眠在每個 fd 的等待隊列,以便 fd 上的事件 ready 了,可以通過 epoll 注冊的回調函數通知到 epoll。

epoll 作為進程 task 的中間層,它需要有一個等待隊列 wq 給 task 在沒事件來 epoll_wait 的時候來睡眠等待(epoll fd 本身也是一個 fd,它和其他 fd 一樣還有另外一個等待隊列 poll_wait,作為 poll 機制被 poll 的時候睡眠等待的地方)。

epoll 可能同時監聽成千上萬的 fd,這樣在少量 fd 有事件 ready 的時候,它需要一個 ready list 隊列來組織所有已經 ready 的就緒 fd,以便能夠高效通知給進程 task,而不需要遍歷所有監聽的 fd。圖中的一個 epoll 的 sleep/wakeup 流程如下:

無事件的時候,多個進程task調用epoll_wait睡眠在epoll的wq睡眠隊列上。 [1]?這個時候一個請求RQ_1上來,listen fd這個時候ready了,開始喚醒其睡眠隊列上的epoll entry,并執行之前epoll注冊的回調函數ep_poll_callback。 [2] ep_poll_callback主要做兩件事情,(1)發生的event事件是epoll entry關心的,則將epi掛載到epoll的就緒隊列ready list并進入(2),否則結束。(2)如果當前wq不為空,則喚醒睡眠在epoll等待隊列上睡眠的task(這里喚醒一個還是多個,是區分epoll的ET模式還是LT模式,下面在細講)。 [3] epoll_wait被喚醒繼續前行,在ep_poll中調用ep_send_events將fd相關的event事件和數據copy到用戶空間,這個時候就需要遍歷epoll的ready list以便收集task需要監控的多個fd的event事件和數據上報給用戶進程task,這個在ep_scan_ready_list中完成,這里會將ready list清空。

通過上圖的 epoll 事件通知機制,epoll 的 LT 模式、ET 模式在事件通知行為上的差別,也只能是在[2]上 task 喚醒邏輯上的差別了。我們先來看下,在 epoll_wait 中調用的導致用戶進程 task 睡眠的 ep_poll 函數的核心邏輯:

static?int?ep_poll(struct?eventpoll?*ep,?struct?epoll_event?__user?*events,?int?maxevents,?long?timeout) { int?res?=?0,?eavail,?timed_out?=?0; bool?waiter?=?false; ... eavail?=?ep_events_available(ep);//是否有fd就緒 if?(eavail) goto?send_events;//有fd就緒,則直接跳過去上報事件給用戶if?(!waiter)?{waiter?=?true;init_waitqueue_entry(&wait,?current);//為當前進程task構造一個睡眠entryspin_lock_irq(&ep->wq.lock);//插入到epoll的wq后面,注意這里是排他插入的,就是帶WQ_FLAG_EXCLUSIVE?flag__add_wait_queue_exclusive(&ep->wq,?&wait);spin_unlock_irq(&ep->wq.lock);}for?(;;)?{//將當前進程設置位睡眠,?但是可以被信號喚醒的狀態,?注意這個設置是"將來時",?我們此刻還沒睡set_current_state(TASK_INTERRUPTIBLE);//?檢查是否真的要睡了if?(fatal_signal_pending(current))?{res?=?-EINTR;break;}eavail?=?ep_events_available(ep);if?(eavail)break;if?(signal_pending(current))?{res?=?-EINTR;break;}//?檢查是否真的要睡了?end//使得當前進程休眠指定的時間范圍,if?(!schedule_hrtimeout_range(to,?slack,?HRTIMER_MODE_ABS))?{timed_out?=?1;break;} }__set_current_state(TASK_RUNNING);send_events:/**?Try?to?transfer?events?to?user?space.?In?case?we?get?0?events?and*?there's?still?timeout?left?over,?we?go?trying?again?in?search?of*?more?luck.*///?ep_send_events往用戶態上報事件,即那些epoll_wait返回后能獲取的事件if?(!res?&&?eavail?&&!(res?=?ep_send_events(ep,?events,?maxevents))?&&?!timed_out)goto?fetch_events;if?(waiter)?{spin_lock_irq(&ep->wq.lock);__remove_wait_queue(&ep->wq,?&wait);spin_unlock_irq(&ep->wq.lock);}return?res; }

接著,我們看下監控的 fd 有事件發生的回調函數 ep_poll_callback 的核心邏輯:

#define?wake_up(x)__wake_up(x,?TASK_NORMAL,?1,?NULL)static?int?ep_poll_callback(wait_queue_entry_t?*wait,?unsigned?mode,?int?sync,?void?*key) {int?pwake?=?0;struct?epitem?*epi?=?ep_item_from_wait(wait);struct?eventpoll?*ep?=?epi->ep;__poll_t?pollflags?=?key_to_poll(key);unsigned?long?flags;int?ewake?=?0;....//判斷是否有我們關心的eventif?(pollflags?&&?!(pollflags?&?epi->event.events))goto?out_unlock;//將當前的epitem放入epoll的ready?listif?(!ep_is_linked(epi)?&&list_add_tail_lockless(&epi->rdllink,?&ep->rdllist))?{ep_pm_stay_awake_rcu(epi);}//如果有task睡眠在epoll的等待隊列,喚醒它if?(waitqueue_active(&ep->wq))?{....wake_up(&ep->wq);//}.... }

wake_up 函數最終會調用到 wake_up_common,通過前面的 wake_up_common 我們知道,喚醒過程在喚醒一個帶 WQ_FLAG_EXCLUSIVE 標記的 task 后,即退出喚醒過程。通過上面的 ep_poll,task 是排他(帶 WQ_FLAG_EXCLUSIVE 標記)加入到 epoll 的等待隊列 wq 的。也就是,在 ep_poll_callback 回調中,只會喚醒一個 task。這就有問題,根據 LT 的語義:只要仍然有未處理的事件,epoll 就會通知你。例如有兩個進程 A、B 睡眠在 epoll 的睡眠隊列,fd 的可讀事件到來喚醒進程 A,但是 A 可能很久才會去處理 fd 的事件,或者它根本就不去處理。根據 LT 的語義,應該要喚醒進程 B 的。

我們來看下 epoll 怎么在 ep_send_events 中實現滿足 LT 語義的:

??static?int?ep_send_events(struct?eventpoll?*ep,struct?epoll_event?__user?*events,?int?maxevents){struct?ep_send_events_data?esed;esed.maxevents?=?maxevents;esed.events?=?events;ep_scan_ready_list(ep,?ep_send_events_proc,?&esed,?0,?false);return?esed.res;}static?__poll_t?ep_scan_ready_list(struct?eventpoll?*ep,__poll_t?(*sproc)(struct?eventpoll?*,struct?list_head?*,?void?*),void?*priv,?int?depth,?bool?ep_locked){...//?所有的epitem都轉移到了txlist上,?而rdllist被清空了list_splice_init(&ep->rdllist,?&txlist);...//sproc?就是?ep_send_events_procres?=?(*sproc)(ep,?&txlist,?priv);...//沒有處理完的epitem,?重新插入到ready?listlist_splice(&txlist,?&ep->rdllist);/*?ready?list不為空,?直接喚醒...?*/?//?保證(2)if?(!list_empty(&ep->rdllist))?{if?(waitqueue_active(&ep->wq))wake_up(&ep->wq);...}}static?__poll_t?ep_send_events_proc(struct?eventpoll?*ep,?struct?list_head?*head,void?*priv){...//遍歷就緒fd列表list_for_each_entry_safe(epi,?tmp,?head,?rdllink)?{...//然后從鏈表里面移除當前就緒的epilist_del_init(&epi->rdllink);//讀取當前epi的事件revents?=?ep_item_poll(epi,?&pt,?1);if?(!revents)continue;//將當前的事件和用戶傳入的數據都copy給用戶空間if?(__put_user(revents,?&uevent->events)?||__put_user(epi->event.data,?&uevent->data))?{//如果發生錯誤了,?則終止遍歷過程,將當前epi重新返回就緒隊列,剩下的也會在ep_scan_ready_list中重新放回就緒隊列list_add(&epi->rdllink,?head);ep_pm_stay_awake(epi);if?(!esed->res)esed->res?=?-EFAULT;return?0;}}if?(epi->event.events?&?EPOLLONESHOT)epi->event.events?&=?EP_PRIVATE_BITS;else?if?(!(epi->event.events?&?EPOLLET))?{?//?保證(1)//如果是非ET模式(即LT模式),當前epi會被重新放到epoll的ready list。list_add_tail(&epi->rdllink,?&ep->rdllist);ep_pm_stay_awake(epi);}}

上面處理邏輯的核心流程就 2 點:

[1]?遍歷并清空epoll的ready?list,遍歷過程中,對于每個epi收集其返回的events,如果沒收集到event,則continue去處理其他epi,否則將當前epi的事件和用戶傳入的數據都copy給用戶空間,并判斷,如果是在LT模式下,則將當前epi重新放回epoll的ready?list [2]?遍歷epoll的ready list完成后,如果ready list不為空,則繼續喚醒epoll睡眠隊列wq上的其他task B。task B從epoll_wait醒來繼續前行,重復上面的流程,繼續喚醒wq上的其他task C,這樣鏈式喚醒下去。

通過上面的流程,在一個 epoll 上睡眠的多個 task,如果在一個 LT 模式下的 fd 的事件上來,會喚醒 epoll 睡眠隊列上的所有 task,而 ET 模式下,僅僅喚醒一個 task,這是 epoll"驚群"的根源。等等,這樣在 LT 模式下就必然"驚群",epoll 在 LT 模式下的"驚群"沒辦法解決么?

3.2 epoll_create& fork

相信大家在多進程服務中使用 epoll 的時候,都會有這樣一個疑問,是先 epoll_create 得到 epoll fd 后在 fork 子進程,還是先 fork 子進程,然后每個子進程在 epoll_create 自己獨立的 epoll fd 呢?有什么異同?

3.2.1 先 epoll_create 后 fork

這樣,多個進程公用一個 epoll 實例(父子進程的 epoll fd 指向同一個內核 epoll 對象),上面介紹的 epoll 核心機制流程,都是在同一個 epoll 對象上的,這種情況下,epoll 有以下這些特性:

[1] epoll在ET模式下不存在“驚群”現象,LT模式是epoll“驚群”的根源,并且LT模式下的“驚群”沒辦法避免。 [2] LT的“驚群”是鏈式喚醒的,喚醒過程直到當前epi的事件被處理了,無法獲得到新的事件才會終止喚醒過程。 例如有A、B、C、D...等多個進程task睡眠在epoll的睡眠隊列上,并且都監控同一個listen fd的可讀事件。一個請求上來,會首先喚醒A進程,A在epoll_wait的處理過程中會喚醒進程B,這樣進程B在epoll_wait的處理過程中會喚醒C,這個時候A的epoll_wait處理完成返回,進程A調用accept讀取了當前這個請求,進程C在自己的epoll_wait處理過程中,從epi中獲取不到事件了,于是終止了整個鏈式喚醒過程。 [3]?多個進程的epoll fd由于指向同一個epoll內核對象,他們對epoll fd的相關epoll_ctl操作會相互影響。一不小心可能會出現一些比較詭異的行為。 想象這樣一個場景(實際上應該不是這樣用),有一個服務在1234,1235,1236這3個端口上提供服務,于是它epoll_create得到epoll fd后,fork出3個工作的子進程A、B、C,它們分別在這3個端口創建listen fd,然后加入到epoll中監聽其可讀事件。這個時候端口1234上來一個請求,A、B、C同時被喚醒,A在epoll_wait返回后,在進行accept前由于種種原因卡住了,沒能及時accept。B、C在epoll_wait返回后去accept又不能accept到請求,這樣B、C重新回到epoll_wait,這個時候又被喚醒,這樣只要A沒有去處理這個請求之前,B、C就一直被喚醒,然而B、C又無法處理該請求。 [4] ET模式下,一個fd上的同事多個事件上來,只會喚醒一個睡眠在epoll上的task,如果該task沒有處理完這些事件,在沒有新的事件上來前,epoll不會在通知task去處理。

由于 ET 的事件通知模式,通常在 ET 模式下的 epoll_wait 返回,我們會循環 accept 來處理所有未處理的請求,直到 accept 返回 EAGAIN 才退出 accept 流程。否則,沒處理遺留下來的請求,這個時候如果沒有新的請求過來觸發 epoll_wait 返回,這樣遺留下來的請求就得不到及時處理。這種處理模式,會帶來一種類"驚群"現象??紤],下面的一個處理過程:

A、B、C三個進程在監聽listen fd的EPOLLIN事件,都睡眠在epoll_wait上,都是ET模式。 [1] listen fd上一個請求C_1上來,該請求喚醒了A進程,A進程從epoll_wait返回準備去accept該請求來處理。 [2]?這個時候,第二個請求C_2上來,由于睡眠隊列上是B、C,于是epoll喚醒B進程,B進程從epoll_wait返回準備去accept該請求來處理。 [3] A進程在自己的accept循環中,首選accept得到C_1,接著A進程在第二個循環繼續accept,繼續得到C_2。 [4] B進程在自己的accept循環中,調用accept,由于C_2已經被A拿走了,于是B進程accept返回EAGAIN錯誤,于是B進程退出accept流程重新睡眠在epoll_wait上。 [5] A進程繼續第三個循環,這個時候已經沒有請求了, accept返回EAGAIN錯誤,于是A進程也退出accept處理流程,進入請求的處理流程。

可以看到,B 進程被喚醒了,但是并沒有事情可以做,同時,epoll 的 ET 這樣的處理模式,負載容易出現不均衡。

3.2.2 先 fork 后 epoll_create

用法上,通常是在父進程創建了 listen fd 后,fork 多個 worker 子進程來共同處理同一個 listen fd 上的請求。這個時候,A、B、C...等多個子進程分別創建自己獨立的 epoll fd,然后將同一個 listen fd 加入到 epoll 中,監聽其可讀事件。這種情況下,epoll 有以下這些特性:

[1]?由于相對同一個listen fd而言,?多個進程之間的epoll是平等的,于是,listen fd上的一個請求上來,會喚醒所有睡眠在listen fd睡眠隊列上的epoll,epoll又喚醒對應的進程task,從而喚醒所有的進程(這里不管listen fd是以LT還是ET模式加入到epoll)。 [2]?多個進程間的epoll是獨立的,對epoll fd的相關epoll_ctl操作相互獨立不影響。

可以看出,在使用友好度方面,多進程獨立 epoll 實例要比共用 epoll 實例的模式要好很多。獨立 epoll 模式要解決 fd 的排他喚醒 epoll 即可。

4.EPOLLEXCLUSIVE 排他喚醒 Epoll

linux4.5 以后的內核版本中,增加了 EPOLLEXCLUSIVE, 該選項只能通過 EPOLL_CTL_ADD 對需要監控的 fd(例如 listen fd)設置 EPOLLEXCLUSIVE 標記。這樣 epoll entry 是通過排他方式掛載到 listen fd 等待隊列的尾部的,睡眠在 listen fd 的等待隊列上的 epoll entry 會加上 WQ_FLAG_EXCLUSIVE 標記。根據前面介紹的內核 wake up 機制,listen fd 上的事件上來,在遍歷并喚醒等待隊列上的 entry 的時候,遇到并喚醒第一個帶 WQ_FLAG_EXCLUSIVE 標記的 entry 后,就結束遍歷喚醒過程。于是,多進程獨立 epoll 的"驚群"問題得到解決。

5."驚群"之 SO_REUSEPORT

"驚群"浪費資源的本質在于很多處理進程在別驚醒后,發現根本無事可做,造成白白被喚醒,做了無用功。但是,簡單的避免"驚群"會造成同時并發上來的請求得不到及時處理(降低了效率),為了避免這種情況,NGINX 允許配置成獲得 Accept 權限的進程一次性循環 Accept 所有同時到達的全部請求,但是,這會造成短時間 worker 進程的負載不均衡。為此,我們希望的是均衡喚醒,也就是,假設有 4 個 worker 進程睡眠在 epoll_wait 上,那么此時同時并發過來 3 個請求,我們希望 3 個 worker 進程被喚醒去處理,而不是僅僅喚醒一個進程或全部喚醒。

然而要實現這樣不是件容易的事情,其根本原因在于,對于大多采用 MPM 機制(multi processing module)TCP 服務而言,基本上都是多個進程或者線程同時在一個 Listen socket 上進行監聽請求。根據前面介紹的 Linux 睡眠隊列的喚醒方式,基本睡眠在這個 listen socket 上的 Task 只能要么全部被喚醒,要么被喚醒一個。

于是,基本的解決方案是起多個 listen socket,好在我們有 SO_REUSEPORT(linux 3.9 以上內核支持),它支持多個進程或線程 bind 相同的 ip 和端口,支持以下特性:

[1]?允許多個socket?bind/listen在相同的IP,相同的TCP/UDP端口 [2]?目的是同一個IP、PORT的請求在多個listen?socket間負載均衡 [3]?安全上,監聽相同IP、PORT的socket只能位于同一個用戶下

于是,在一個多核 CPU 的服務器上,我們通過 SO_REUSEPORT 來創建多個監聽相同 IP、PORT 的 listen socket,每個進程監聽不同的 listen socket。這樣,在只有 1 個新請求到達監聽的端口的時候,內核只會喚醒一個進程去 accept,而在同時并發多個請求來到的時候,內核會喚醒多個進程去 accept,并且在一定程度上保證喚醒的均衡性。SO_REUSEPORT 在一定程度上解決了"驚群"問題,但是,由于 SO_REUSEPORT 根據數據包的四元組和當前服務器上綁定同一個 IP、PORT 的 listen socket 數量,根據固定的 hash 算法來路由數據包的,其存在如下問題:

[1] Listen Socket數量發生變化的時候,會造成握手數據包的前一個數據包路由到A listen socket,而后一個握手數據包路由到B listen socket,這樣會造成client的連接請求失敗。 [2]?短時間內各個listen?socket間的負載不均衡

6.驚不"驚群"其實是個問題

很多時候,我們并不是害怕"驚群",我們怕的"驚群"之后,做了很多無用功。相反在一個異常繁忙,并發請求很多的服務器上,為了能夠及時處理到來的請求,我們希望能有多"驚群"就多"驚群",因為根本做不了無用功,請求多到都來不及處理。于是出現下面的情形:

從上可以看到各個 CPU 都很忙,但是實際有用的 CPU 時間卻很少,大部分的 CPU 消耗在_spin_lock 自旋鎖上了,并且服務器并發吞吐量并沒有隨著 CPU 核數增加呈現線性增長,相反出現下降的情況。這是為什么呢?怎么解決?

6.1 問題原因

我們知道,一般一個 TCP 服務只有一個 listen socket、一個 accept 隊列,而一個 TCP 服務一般有多個服務進程(一個核一個)來處理請求。于是并發請求到達 listen socket 處,那么多個服務進程勢必存在競爭,競爭一存在,那么就需要用排隊來解決競態問題,于是似乎鎖就無法避免了。在這里,有兩類競爭主體,一類是內核協議棧(不可睡眠類)、一類是用戶進程(可睡眠類),這兩類主體對 listen socket 發生三種類型的競爭:

[1]?協議棧內部之間的競爭 [2]?用戶進程內部之間的競爭 [3]?協議棧和用戶之間的競爭

由于內核協議棧是不可睡眠的,為此 linux 中采用兩層鎖定的 lock 結構,一把 listen_socket.lock 自旋鎖,一把 listen_socket.own 排他標記鎖。其中,listen_socket.lock 用于協議棧內部之間的競爭、協議棧和用戶之間的競爭,而 listen_socket.own 用于用戶進程內部之間的競爭,listen_socket.lock 作為 listen_socket.own 的排他保護(要獲取 listen_socket.own 首先要獲取到 listen_socket.lock)。對于處理 TCP 請求而言,一個 SYN 包 syn_skb 到來,這個時候內核 Lock(RCU 鎖)住全局的 listeners Table,查找 syn_skb 對應的 listen_socket,沒找到則返回錯誤。否則,就需要進入三次握手處理,首先內核協議棧需要自旋獲得 listen_socket.lock 鎖,初始化一些數據結構,回復 syn_ack,然后釋放 listen_socket.lock 鎖。

接著,client 端的 ack 包到來,協議棧這個時候,需要自旋獲得 listen_socket.lock 鎖,構造 client 端的 socket 等數據結構,如果 accept 隊列沒有被用戶進程占用,那么就將連接排入 accept 隊列等待用戶進程來 accept,否則就排入 backlog 隊列(職責轉移,連接排入 accept 隊列的事情交給占有 accept 隊列的用戶進程)??梢?#xff0c;處理一個請求,協議棧需要競爭兩次 listen_socket 的自旋鎖。由于內核協議棧不能睡眠,于是它只能自旋不斷地去嘗試獲取 listen_socket.lock 自旋鎖,直到獲取到自旋鎖成功為止,中間不能停下來。自旋鎖這種暴力、打架的搶鎖方式,在一個高并發請求到來的服務器上,就有可能出現上面這種 80%多的 CPU 時間被內核占用,應用程序只能夠分配到較少的 CPU 時鐘周期的資源的情況。

6.2 問題的解決

解決這個問題無非兩個方向:(1) 多隊列化,減少競爭者 (2) listen_socket 無鎖化 。

6.2.1 多隊列化 - SO_REUSEPORT

通過上面的介紹,在 Linux kernel 3.9 以上,可以通過 SO_REUSEPORT 來創建多個 bind 相同 IP、PORT 的 listen_socket。我們可以每一個 CPU 核創建一個 listen_socket 來監聽處理請求,這樣就是每個 CPU 一個處理進程、一個 listen_socket、一個 accept 隊列,多個進程同時并發處理請求,進程之間不再相互競爭 listen_socket。SO_REUSEPORT 可以做到多個 listen_socket 間的負載均衡,然而其負載均衡效果是取決于 hash 算法,可能會出現短時間內的負載極端不均衡。

SO_REUSEPORT 是在將一對多的問題變成多對多的問題,將 Listen Socket 無序暴力爭搶 CPU 的現狀變成更為有序的爭搶。多隊列化的優化必須要面對和解決的四個問題是:隊列比 CPU 多,隊列與 CPU 相等,隊列比 CPU 少,根本就沒有隊列,于是,他們要解決隊列發生變化的情況。

如果僅僅把 TCP 的 Listener 看作一個被協議棧處理的 Socket,它和 Client Socket 一起都在相互拼命搶 CPU 資源,那么就可能出現上面的,短時間大量并發請求過來的時候,大量的 CPU 時間被消耗在自旋鎖的爭搶上了。我們可以換個角度,如果把 TCP Listener 看作一個基礎設施服務呢?Listener 為新來的連接請求提供連接服務,并產生 Client Socket 給用戶進程,它可以通過一個或多個兩類 Accept 隊列提供一個服務窗口給用戶進程來 accept Client Socket 來處理。僅僅在 Client Socket 需要排入 Accept 隊列的是,細粒度鎖住隊列即可,多個有多個 Accept 隊列(每 CPU 一個,那么連鎖隊列的操作都可以省了)。這樣 Listener 就與用戶進程無關了,用戶進程的產生、退出、CPU 間跳躍、綁定,解除綁定等等都不會影響 TCP Listener 基礎設施服務,受影響的是僅僅他們自己該從那個 Accept 隊列獲取 Client Socket 來處理。于是一個解決思路是連接處理無鎖化。

6.2.2 listen socket 無鎖化- 旁門左道之 SYN Cookie

SYN Cookie 原理由 D.J. Bernstain 和 Eric Schenk 提出,專門用來防范 SYN Flood 攻擊的一種手段。它的原理是,在 TCP 服務器接收到 SYN 包并返回 SYN ACK 包時,不分配一個專門的數據結構(避免浪費服務器資源),而是根據這個 SYN 包計算出一個 cookie 值。這個 cookie 作為 SYN ACK 包的初始序列號。當客戶端返回一個 ACK 包時,根據包頭信息計算 cookie,與返回的確認序列號(初始序列號 + 1)進行對比,如果相同,則是一個正常連接,然后,分配資源,創建 Client Socket 排入 Accept 隊列等等用戶進程取出處理。于是,整個 TCP 連接處理過程實現了無狀態的三次握手。SYN Cookie 機制實現了一定程度上的 listen socket 無鎖化,但是它有以下幾個缺點。

  • (1)丟失 TCP 選項信息在建立連接的過程中,不在服務器端保存任何信息,它會丟失很多選項協商信息,這些信息對 TCP 的性能至關重要,比如超時重傳等。但是,如果使用時間戳選項,則會把 TCP 選項信息保存在 SYN ACK 段中 tsval 的低 6 位。

  • (2)cookie 不能隨地開啟Linux 采用動態資源分配機制,當分配了一定的資源后再采用 cookie 技術。同時為了避免另一種拒絕服務攻擊方式,攻擊者發送大量的 ACK 報文,服務器忙于計算驗證 SYN Cookie。服務器對收到的 ACK 進行 Cookie 合法性驗證前,需要確定最近確實發生了半連接隊列溢出,不然攻擊者只要隨便發送一些 ACK,服務器便要忙于計算了。

6.2.3 listen socket 無鎖化- Linux 4.4 內核給出的 Lockless TCP listener

SYN cookie 給出了 Lockless TCP listener 的一些思路,但是我們不想是無狀態的三次握手,又不想請求的處理和 Listener 強相關,避免每次進行握手處理都需要 lock 住 listen socket,帶來性能瓶頸。4.4 內核前的握手處理是以 listen socket 為主體,listen socket 管理著所有屬于它的請求,于是進行三次握手的每個數據包的處理都需要操作這個 listener 本身,而一般情況下,一個 TCP 服務器只有一個 listener,于是在多核環境下,就需要加鎖 listen socket 來安全處理握手過程了。我們可以換個角度,握手的處理不再以 listen socket 為主體,而是以連接本身為主體,需要記住的是該連接所屬的 listen socket 即可。4.4 內核握手處理流程如下:

[1] TCP 數據包 skb 到達本機,內核協議棧從全局 socket 表中查找 skb 的目的 socket(sk),如果是 SYN 包,當然查找到的是 listen_socket 了,于是,協議棧根據 skb 構造出一個新的 socket(tmp_sk),并將 tmp_sk 的 listener 標記為 listen_socket,并將 tmp_sk 的狀態設置為 SYNRECV,同時將構造好的 tmp_sk 排入全局 socket 表中,并回復 syn_ack 給 client。

[2] 如果到達本機的 skb 是 syn_ack 的 ack 數據包,那么查找到的將是 tmp_sk,并且 tmp_sk 的 state 是 SYNRECV,于是內核知道該數據包 skb 是 syn_ack 的 ack 包了,于是在 new_sk 中拿出連接所屬的 listen_socket,并且根據 tmp_sk 和到來的 skb 構造出 client_socket,然后將 tmp_sk 從全局 socket 表中刪除(它的使命結束了),最后根據所屬的 listen_socket 將 client_socket 排如 listen_socket 的 accept 隊列中,整個握手過程結束。

4.4 內核一改之前的以 listener 為主體,listener 管理所有 request 的方式,在 SYN 包到來的時候,進行控制反轉,以 Request 為主體,構造出一個臨時的 tmp_sk 并標記好其所屬的 listener,然后平行插入到所有 socket 公共的 socket 哈希表中,從而解放掉 listener,實現 Lockless TCP listener。

7.參考文獻

https://blog.csdn.net/dog250/article/details/50528426?

https://zhuanlan.zhihu.com/p/51251700?

https://blog.csdn.net/dog250/article/details/80837278

- END -


看完一鍵三連在看轉發,點贊

是對文章最大的贊賞,極客重生感謝你

推薦閱讀

圖解Linux 內核TCP/IP 協議棧實現|Linux網絡硬核系列

深入理解編程藝術之策略與機制相分離

一個奇葩的網絡問題

總結

以上是生活随笔為你收集整理的深入浅出 Linux 惊群:现象、原因和解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。

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

无码纯肉视频在线观看 | 狠狠色欧美亚洲狠狠色www | 国产乱人伦av在线无码 | 国产亚洲视频中文字幕97精品 | 国产午夜福利100集发布 | 久久综合九色综合97网 | 国产精品二区一区二区aⅴ污介绍 | 玩弄中年熟妇正在播放 | 久青草影院在线观看国产 | 久久久久99精品国产片 | 久精品国产欧美亚洲色aⅴ大片 | 日本一区二区三区免费播放 | 无码播放一区二区三区 | 男女猛烈xx00免费视频试看 | 精品乱子伦一区二区三区 | 亚洲精品中文字幕 | 桃花色综合影院 | 人人妻人人澡人人爽欧美一区九九 | 99久久久国产精品无码免费 | 无码国产色欲xxxxx视频 | 国产福利视频一区二区 | 国产av一区二区三区最新精品 | 日日鲁鲁鲁夜夜爽爽狠狠 | 国产在热线精品视频 | 国产偷抇久久精品a片69 | 亚洲精品美女久久久久久久 | 人人妻人人澡人人爽欧美精品 | 亚洲另类伦春色综合小说 | 精品日本一区二区三区在线观看 | 亚洲国产欧美日韩精品一区二区三区 | 少妇人妻大乳在线视频 | 亚洲欧美精品aaaaaa片 | 丰满岳乱妇在线观看中字无码 | 国产肉丝袜在线观看 | 国产午夜福利100集发布 | 九九久久精品国产免费看小说 | 国产69精品久久久久app下载 | 一本色道久久综合狠狠躁 | 亚洲精品久久久久中文第一幕 | 国产精品亚洲专区无码不卡 | 国产精品嫩草久久久久 | 在线精品亚洲一区二区 | 亚洲中文字幕va福利 | 2019午夜福利不卡片在线 | 国产香蕉尹人视频在线 | 国产精品无码一区二区三区不卡 | 久久久www成人免费毛片 | 久久久久成人精品免费播放动漫 | 国产综合在线观看 | 亚洲熟妇色xxxxx欧美老妇y | 天堂а√在线地址中文在线 | 精品一区二区三区无码免费视频 | 全球成人中文在线 | 国产 精品 自在自线 | 少妇太爽了在线观看 | а天堂中文在线官网 | 色欲久久久天天天综合网精品 | 日本高清一区免费中文视频 | 国产亚洲日韩欧美另类第八页 | 亚洲精品中文字幕 | 亚洲狠狠色丁香婷婷综合 | 老熟妇乱子伦牲交视频 | 国产精品人妻一区二区三区四 | 色一情一乱一伦一视频免费看 | 欧美一区二区三区 | 纯爱无遮挡h肉动漫在线播放 | 一本大道伊人av久久综合 | 久久天天躁狠狠躁夜夜免费观看 | 伊人久久婷婷五月综合97色 | 精品国产成人一区二区三区 | 一本无码人妻在中文字幕免费 | 亚洲人交乣女bbw | 亲嘴扒胸摸屁股激烈网站 | 久久久久久九九精品久 | 一区二区三区乱码在线 | 欧洲 | 波多野结衣一区二区三区av免费 | 国产激情无码一区二区 | 国产亚洲精品久久久久久大师 | 狂野欧美性猛交免费视频 | 性欧美牲交xxxxx视频 | 亚洲国产欧美日韩精品一区二区三区 | 久久久精品国产sm最大网站 | 亚洲欧美国产精品专区久久 | 亚洲高清偷拍一区二区三区 | 亚洲熟女一区二区三区 | 国产热a欧美热a在线视频 | 日韩精品久久久肉伦网站 | 国产明星裸体无码xxxx视频 | 午夜福利一区二区三区在线观看 | 亚洲精品中文字幕久久久久 | 国产精品99爱免费视频 | 亚洲欧洲日本综合aⅴ在线 | 未满成年国产在线观看 | 在线观看欧美一区二区三区 | 天堂久久天堂av色综合 | 51国偷自产一区二区三区 | 色综合久久中文娱乐网 | 亚洲狠狠色丁香婷婷综合 | 国产成人无码av在线影院 | 亚洲精品久久久久久久久久久 | 中文字幕 亚洲精品 第1页 | 伊人久久大香线蕉av一区二区 | 麻豆av传媒蜜桃天美传媒 | 午夜精品久久久久久久 | 少妇一晚三次一区二区三区 | www国产亚洲精品久久网站 | 日本成熟视频免费视频 | 国产真实夫妇视频 | 色综合久久88色综合天天 | 国产亚洲精品精品国产亚洲综合 | 国产婷婷色一区二区三区在线 | 精品午夜福利在线观看 | 99视频精品全部免费免费观看 | 国产激情艳情在线看视频 | 国产性生大片免费观看性 | 无码人妻出轨黑人中文字幕 | 99精品国产综合久久久久五月天 | 国产成人精品优优av | 久久精品女人天堂av免费观看 | 国产精品自产拍在线观看 | 一个人看的www免费视频在线观看 | 蜜桃臀无码内射一区二区三区 | 亚洲无人区午夜福利码高清完整版 | √8天堂资源地址中文在线 | 国产办公室秘书无码精品99 | 大肉大捧一进一出好爽视频 | 无码午夜成人1000部免费视频 | 永久免费观看美女裸体的网站 | 国产舌乚八伦偷品w中 | 国产亚洲精品久久久久久国模美 | 夜夜高潮次次欢爽av女 | 狠狠色噜噜狠狠狠狠7777米奇 | 亚洲国产午夜精品理论片 | 亚洲va中文字幕无码久久不卡 | 天天躁日日躁狠狠躁免费麻豆 | 日本精品少妇一区二区三区 | 亚洲精品久久久久久久久久久 | 国产明星裸体无码xxxx视频 | 欧美一区二区三区视频在线观看 | 日韩亚洲欧美精品综合 | 国产极品视觉盛宴 | 午夜精品久久久久久久久 | 久久午夜无码鲁丝片秋霞 | 国产无遮挡又黄又爽又色 | 一本色道久久综合亚洲精品不卡 | 色综合久久网 | 精品无码国产自产拍在线观看蜜 | 丰满人妻一区二区三区免费视频 | 精品无码av一区二区三区 | 熟女少妇人妻中文字幕 | 国产女主播喷水视频在线观看 | 欧美亚洲国产一区二区三区 | 国产成人精品三级麻豆 | 亚洲综合另类小说色区 | 鲁鲁鲁爽爽爽在线视频观看 | 国产精品无码久久av | 天天燥日日燥 | 欧美黑人性暴力猛交喷水 | 水蜜桃亚洲一二三四在线 | 欧美 日韩 亚洲 在线 | 久久aⅴ免费观看 | 国产午夜手机精彩视频 | 狂野欧美性猛交免费视频 | 中文字幕av日韩精品一区二区 | 少妇被粗大的猛进出69影院 | 亚洲人成影院在线无码按摩店 | 日本xxxx色视频在线观看免费 | 亚洲熟熟妇xxxx | 国产乱人伦偷精品视频 | 天堂无码人妻精品一区二区三区 | 亚洲精品www久久久 | 国产精品欧美成人 | 狠狠色噜噜狠狠狠狠7777米奇 | 国产两女互慰高潮视频在线观看 | 又粗又大又硬又长又爽 | 久久久久久久久888 | 亚洲娇小与黑人巨大交 | 亚洲日本在线电影 | 无码帝国www无码专区色综合 | 国产精品美女久久久 | 亚洲一区二区三区四区 | 亚洲国产精品美女久久久久 | 亚洲自偷自偷在线制服 | 亚洲另类伦春色综合小说 | 国内揄拍国内精品少妇国语 | 欧美日韩视频无码一区二区三 | 亚洲人成人无码网www国产 | 亚洲性无码av中文字幕 | 亚洲国产精品美女久久久久 | 亚洲综合久久一区二区 | 欧美熟妇另类久久久久久不卡 | 亚洲理论电影在线观看 | 一本色道久久综合亚洲精品不卡 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 国产人妻大战黑人第1集 | 亚洲高清偷拍一区二区三区 | 精品人人妻人人澡人人爽人人 | 国产乱人伦偷精品视频 | 日本www一道久久久免费榴莲 | 麻豆精产国品 | 国产av久久久久精东av | 97夜夜澡人人双人人人喊 | 一个人免费观看的www视频 | 永久免费观看国产裸体美女 | 未满成年国产在线观看 | 精品国产乱码久久久久乱码 | 亚洲精品久久久久久一区二区 | 日本一卡2卡3卡四卡精品网站 | 久激情内射婷内射蜜桃人妖 | 国内精品人妻无码久久久影院 | 久久久久久九九精品久 | 帮老师解开蕾丝奶罩吸乳网站 | 亚洲无人区一区二区三区 | 极品嫩模高潮叫床 | 2020最新国产自产精品 | 国产精品怡红院永久免费 | 久久久久久久久888 | 老子影院午夜精品无码 | 久久久久国色av免费观看性色 | 久久午夜夜伦鲁鲁片无码免费 | 又大又硬又爽免费视频 | 97久久精品无码一区二区 | 日本一区二区三区免费播放 | 无码一区二区三区在线 | 国产午夜无码视频在线观看 | 中文字幕乱码人妻无码久久 | 久久亚洲日韩精品一区二区三区 | 亚洲国产欧美日韩精品一区二区三区 | 97久久精品无码一区二区 | 风流少妇按摩来高潮 | 亚洲熟妇色xxxxx欧美老妇y | 亚洲精品一区三区三区在线观看 | 全黄性性激高免费视频 | 中文字幕人妻无码一区二区三区 | 精品无码国产自产拍在线观看蜜 | 亚洲综合无码一区二区三区 | 精品熟女少妇av免费观看 | 久热国产vs视频在线观看 | 国产精品久久久一区二区三区 | 一区二区三区乱码在线 | 欧洲 | 激情五月综合色婷婷一区二区 | 九九在线中文字幕无码 | 福利一区二区三区视频在线观看 | 欧美 日韩 亚洲 在线 | 久久精品人人做人人综合 | 高清国产亚洲精品自在久久 | 大色综合色综合网站 | 国产农村妇女高潮大叫 | 亚洲无人区一区二区三区 | 狠狠色丁香久久婷婷综合五月 | 国产亚洲精品久久久久久久久动漫 | 性色欲情网站iwww九文堂 | 狠狠色丁香久久婷婷综合五月 | 人妻少妇精品视频专区 | 国产精品久久久久久久9999 | 国产女主播喷水视频在线观看 | 日韩精品a片一区二区三区妖精 | 又粗又大又硬毛片免费看 | 欧美日韩视频无码一区二区三 | 无码国产色欲xxxxx视频 | 日韩在线不卡免费视频一区 | 蜜桃视频韩日免费播放 | 天天燥日日燥 | 一本色道久久综合狠狠躁 | 东京热无码av男人的天堂 | 国产亚洲精品久久久久久久久动漫 | 国产三级久久久精品麻豆三级 | 免费无码一区二区三区蜜桃大 | 人妻体内射精一区二区三四 | 粉嫩少妇内射浓精videos | 久久国产精品萌白酱免费 | 久久无码中文字幕免费影院蜜桃 | 亚洲综合精品香蕉久久网 | 精品欧洲av无码一区二区三区 | 熟女少妇在线视频播放 | 久久久无码中文字幕久... | 国产精品手机免费 | 国产乱人偷精品人妻a片 | 国产亚洲人成在线播放 | 99久久久无码国产精品免费 | 狂野欧美性猛xxxx乱大交 | 免费国产黄网站在线观看 | 国产婷婷色一区二区三区在线 | 好爽又高潮了毛片免费下载 | 国产精品视频免费播放 | 欧美人与物videos另类 | 在线精品国产一区二区三区 | 一本色道久久综合亚洲精品不卡 | 国产精品无码一区二区桃花视频 | 中文无码精品a∨在线观看不卡 | 精品久久久久香蕉网 | 黑人粗大猛烈进出高潮视频 | 中文字幕乱码中文乱码51精品 | 中文字幕日韩精品一区二区三区 | 中文字幕 人妻熟女 | 欧美熟妇另类久久久久久不卡 | 狠狠综合久久久久综合网 | 久久久精品国产sm最大网站 | 香港三级日本三级妇三级 | 爱做久久久久久 | 成人无码精品一区二区三区 | 亚洲一区二区三区国产精华液 | 国产香蕉尹人综合在线观看 | 国产在线精品一区二区高清不卡 | 日本在线高清不卡免费播放 | 中文无码精品a∨在线观看不卡 | 激情综合激情五月俺也去 | 无码人中文字幕 | 无码任你躁久久久久久久 | 国产av一区二区精品久久凹凸 | 日本爽爽爽爽爽爽在线观看免 | 欧洲欧美人成视频在线 | 无码人妻久久一区二区三区不卡 | 55夜色66夜色国产精品视频 | 国产精品爱久久久久久久 | 中文字幕人成乱码熟女app | 久久久久成人精品免费播放动漫 | 国产午夜精品一区二区三区嫩草 | 国产三级精品三级男人的天堂 | 99精品国产综合久久久久五月天 | 少女韩国电视剧在线观看完整 | 国产精品无码久久av | 内射白嫩少妇超碰 | 国产精品高潮呻吟av久久4虎 | 国产成人精品三级麻豆 | 内射欧美老妇wbb | 亚洲中文字幕久久无码 | 给我免费的视频在线观看 | 精品 日韩 国产 欧美 视频 | 欧美成人家庭影院 | 一本大道久久东京热无码av | 中文字幕乱码人妻二区三区 | 亚洲国产欧美日韩精品一区二区三区 | 无码乱肉视频免费大全合集 | 日本熟妇人妻xxxxx人hd | 日本www一道久久久免费榴莲 | 欧美自拍另类欧美综合图片区 | 久久国产精品精品国产色婷婷 | 亚洲国产精品一区二区美利坚 | 在线播放亚洲第一字幕 | 久久久久亚洲精品男人的天堂 | 中文字幕av伊人av无码av | 乱码av麻豆丝袜熟女系列 | 奇米影视7777久久精品人人爽 | 久久综合九色综合97网 | 男人扒开女人内裤强吻桶进去 | 精品少妇爆乳无码av无码专区 | 久久成人a毛片免费观看网站 | 欧美激情综合亚洲一二区 | 亚洲成a人片在线观看无码3d | 久久精品国产大片免费观看 | 久9re热视频这里只有精品 | 国产人妻精品一区二区三区 | 日日噜噜噜噜夜夜爽亚洲精品 | 国内少妇偷人精品视频 | 人人超人人超碰超国产 | 国产手机在线αⅴ片无码观看 | 高清国产亚洲精品自在久久 | 国产精品久久久久7777 | 曰本女人与公拘交酡免费视频 | 久久www免费人成人片 | 成人免费视频视频在线观看 免费 | 国产av一区二区精品久久凹凸 | 任你躁国产自任一区二区三区 | 亚洲呦女专区 | 99久久精品日本一区二区免费 | 秋霞成人午夜鲁丝一区二区三区 | 国产精品人人爽人人做我的可爱 | 欧美黑人性暴力猛交喷水 | 国产无遮挡吃胸膜奶免费看 | 国产精华av午夜在线观看 | 无码一区二区三区在线 | 人妻互换免费中文字幕 | 精品少妇爆乳无码av无码专区 | 国产亚洲tv在线观看 | 亚洲精品欧美二区三区中文字幕 | 无套内射视频囯产 | 欧美日韩一区二区三区自拍 | 精品 日韩 国产 欧美 视频 | 亚洲成av人片天堂网无码】 | 性欧美牲交在线视频 | 国产精品二区一区二区aⅴ污介绍 | 国模大胆一区二区三区 | 欧美日本精品一区二区三区 | 扒开双腿吃奶呻吟做受视频 | 国产成人综合美国十次 | 大色综合色综合网站 | 欧洲熟妇色 欧美 | 成人精品视频一区二区三区尤物 | 亚洲欧美中文字幕5发布 | 国产精品人人妻人人爽 | 色噜噜亚洲男人的天堂 | 偷窥村妇洗澡毛毛多 | 丁香啪啪综合成人亚洲 | 久久精品国产一区二区三区 | 人妻人人添人妻人人爱 | 久久精品国产一区二区三区肥胖 | 亚洲天堂2017无码 | 国产麻豆精品精东影业av网站 | 亚洲国产综合无码一区 | 亚洲国产精品成人久久蜜臀 | 97夜夜澡人人双人人人喊 | 国产精品毛多多水多 | 亚洲精品欧美二区三区中文字幕 | 日日摸日日碰夜夜爽av | 日本www一道久久久免费榴莲 | 天天摸天天碰天天添 | а天堂中文在线官网 | 色一情一乱一伦 | 国产精品视频免费播放 | 国产成人精品三级麻豆 | 综合网日日天干夜夜久久 | 成年美女黄网站色大免费全看 | 日韩人妻无码一区二区三区久久99 | 色婷婷av一区二区三区之红樱桃 | 欧美成人免费全部网站 | 精品久久8x国产免费观看 | 中国女人内谢69xxxxxa片 | 无码人妻丰满熟妇区五十路百度 | 色诱久久久久综合网ywww | 强开小婷嫩苞又嫩又紧视频 | 久久精品国产一区二区三区 | 国产麻豆精品一区二区三区v视界 | 国产xxx69麻豆国语对白 | 久久综合给久久狠狠97色 | 亚洲区小说区激情区图片区 | 丁香花在线影院观看在线播放 | 日本大香伊一区二区三区 | 国产欧美熟妇另类久久久 | 欧美高清在线精品一区 | 好男人www社区 | 国产人妻久久精品二区三区老狼 | 欧美zoozzooz性欧美 | 97无码免费人妻超级碰碰夜夜 | 午夜精品一区二区三区在线观看 | 人人妻人人澡人人爽欧美精品 | 日欧一片内射va在线影院 | 人妻插b视频一区二区三区 | 午夜性刺激在线视频免费 | 中文毛片无遮挡高清免费 | 欧美国产日韩亚洲中文 | 黑人大群体交免费视频 | 国产亚洲视频中文字幕97精品 | 漂亮人妻洗澡被公强 日日躁 | 狠狠亚洲超碰狼人久久 | 精品国偷自产在线视频 | 欧美性猛交内射兽交老熟妇 | 77777熟女视频在线观看 а天堂中文在线官网 | 日韩精品无码一区二区中文字幕 | 亚洲自偷精品视频自拍 | 特级做a爰片毛片免费69 | 国产人妻大战黑人第1集 | 精品国产乱码久久久久乱码 | 18精品久久久无码午夜福利 | 人妻少妇精品视频专区 | 99久久无码一区人妻 | 精品无码一区二区三区的天堂 | 亚洲一区二区三区无码久久 | 国产精品亚洲一区二区三区喷水 | 欧美国产亚洲日韩在线二区 | 在线成人www免费观看视频 | 欧洲美熟女乱又伦 | 久久97精品久久久久久久不卡 | 中文精品无码中文字幕无码专区 | 伊在人天堂亚洲香蕉精品区 | 色综合久久久久综合一本到桃花网 | 日日噜噜噜噜夜夜爽亚洲精品 | 高中生自慰www网站 | 国产亚洲精品久久久久久大师 | 成人性做爰aaa片免费看不忠 | 国产午夜无码精品免费看 | 成人欧美一区二区三区黑人 | 国产一区二区三区影院 | 日本熟妇人妻xxxxx人hd | 欧美黑人乱大交 | 天堂亚洲2017在线观看 | 国产午夜无码精品免费看 | 日产精品99久久久久久 | 亚洲第一网站男人都懂 | 亚洲理论电影在线观看 | 久久99精品久久久久久 | 人人妻人人澡人人爽欧美一区九九 | 国产精品高潮呻吟av久久4虎 | 蜜臀aⅴ国产精品久久久国产老师 | 一个人免费观看的www视频 | 四虎4hu永久免费 | 中文字幕乱码中文乱码51精品 | 欧美精品无码一区二区三区 | 日日摸夜夜摸狠狠摸婷婷 | 欧美亚洲国产一区二区三区 | 久久天天躁狠狠躁夜夜免费观看 | 波多野42部无码喷潮在线 | 激情内射亚州一区二区三区爱妻 | 欧美性生交xxxxx久久久 | 丰满少妇弄高潮了www | 成在人线av无码免费 | 成人免费视频视频在线观看 免费 | 亚洲精品鲁一鲁一区二区三区 | 1000部啪啪未满十八勿入下载 | 国模大胆一区二区三区 | 久久久无码中文字幕久... | 成 人 免费观看网站 | 自拍偷自拍亚洲精品被多人伦好爽 | 国产av人人夜夜澡人人爽麻豆 | 久久久精品456亚洲影院 | 亚洲精品中文字幕乱码 | 久精品国产欧美亚洲色aⅴ大片 | 自拍偷自拍亚洲精品被多人伦好爽 | 久久久久人妻一区精品色欧美 | 女人被男人躁得好爽免费视频 | 成人女人看片免费视频放人 | 天天拍夜夜添久久精品 | 中文字幕无码av波多野吉衣 | 色婷婷欧美在线播放内射 | 久久久久成人精品免费播放动漫 | 日日摸日日碰夜夜爽av | 婷婷色婷婷开心五月四房播播 | 色婷婷香蕉在线一区二区 | 色窝窝无码一区二区三区色欲 | 清纯唯美经典一区二区 | 三级4级全黄60分钟 | 丰满肥臀大屁股熟妇激情视频 | 欧美freesex黑人又粗又大 | 老熟女重囗味hdxx69 | 99精品视频在线观看免费 | 荫蒂添的好舒服视频囗交 | 国产无av码在线观看 | 国产一区二区三区四区五区加勒比 | 日韩欧美成人免费观看 | a国产一区二区免费入口 | 久久精品女人天堂av免费观看 | 亲嘴扒胸摸屁股激烈网站 | 亚洲区小说区激情区图片区 | av在线亚洲欧洲日产一区二区 | 天海翼激烈高潮到腰振不止 | 国内丰满熟女出轨videos | 久久综合给合久久狠狠狠97色 | 国产亚洲精品精品国产亚洲综合 | 性欧美大战久久久久久久 | 国产卡一卡二卡三 | 国产精品内射视频免费 | 成人aaa片一区国产精品 | 在线天堂新版最新版在线8 | 97久久国产亚洲精品超碰热 | 国产av剧情md精品麻豆 | 国产精品国产自线拍免费软件 | 精品国产国产综合精品 | 久久97精品久久久久久久不卡 | 亚洲一区二区三区 | 蜜臀av在线播放 久久综合激激的五月天 | 熟妇人妻无乱码中文字幕 | 综合激情五月综合激情五月激情1 | 乱中年女人伦av三区 | 大肉大捧一进一出视频出来呀 | 亚洲精品久久久久久一区二区 | 久久天天躁夜夜躁狠狠 | 中文精品久久久久人妻不卡 | 天堂а√在线地址中文在线 | 久久国产劲爆∧v内射 | 玩弄少妇高潮ⅹxxxyw | 久久久婷婷五月亚洲97号色 | 性欧美牲交在线视频 | 久久伊人色av天堂九九小黄鸭 | 国产无套粉嫩白浆在线 | 国产成人综合在线女婷五月99播放 | 国产又爽又黄又刺激的视频 | 噜噜噜亚洲色成人网站 | 99re在线播放 | 日本护士毛茸茸高潮 | 精品人妻av区 | 无码av中文字幕免费放 | 国产黄在线观看免费观看不卡 | 老熟妇仑乱视频一区二区 | 亚洲欧洲日本综合aⅴ在线 | 中文字幕 人妻熟女 | 亚洲男人av香蕉爽爽爽爽 | 好爽又高潮了毛片免费下载 | 一二三四社区在线中文视频 | 亚洲国产精品无码一区二区三区 | 精品一区二区不卡无码av | 国产精品视频免费播放 | 久久久久免费看成人影片 | 老熟妇乱子伦牲交视频 | 久久久久成人片免费观看蜜芽 | 久久熟妇人妻午夜寂寞影院 | 美女极度色诱视频国产 | 亚洲熟悉妇女xxx妇女av | 爽爽影院免费观看 | 久久人人爽人人爽人人片ⅴ | 亚洲色欲久久久综合网东京热 | 中文字幕色婷婷在线视频 | 天堂а√在线地址中文在线 | 中文字幕av无码一区二区三区电影 | 欧美zoozzooz性欧美 | 国产一区二区不卡老阿姨 | 欧美 丝袜 自拍 制服 另类 | 国产精品香蕉在线观看 | 国产97人人超碰caoprom | 久久亚洲中文字幕无码 | 国产精品久久久午夜夜伦鲁鲁 | 亚洲日本一区二区三区在线 | 黑人巨大精品欧美黑寡妇 | 国产精品国产三级国产专播 | 国产口爆吞精在线视频 | 欧美日韩人成综合在线播放 | 亚洲码国产精品高潮在线 | 大胆欧美熟妇xx | 亚洲中文字幕无码中字 | 成在人线av无码免费 | 国内精品人妻无码久久久影院蜜桃 | 国产精品久久久久无码av色戒 | 精品人人妻人人澡人人爽人人 | 亚洲色偷偷偷综合网 | 精品国产一区二区三区四区在线看 | 日韩av无码一区二区三区不卡 | 精品一区二区三区波多野结衣 | 男女超爽视频免费播放 | 日本一卡2卡3卡四卡精品网站 | 3d动漫精品啪啪一区二区中 | 国产精品美女久久久久av爽李琼 | 亚洲色欲久久久综合网东京热 | 日本又色又爽又黄的a片18禁 | 乱中年女人伦av三区 | 国产人妻精品一区二区三区不卡 | 曰韩少妇内射免费播放 | 欧美日韩综合一区二区三区 | 国产精品.xx视频.xxtv | 国产真实夫妇视频 | 水蜜桃色314在线观看 | 麻豆果冻传媒2021精品传媒一区下载 | 久久综合九色综合欧美狠狠 | 无码乱肉视频免费大全合集 | 国产办公室秘书无码精品99 | 成人综合网亚洲伊人 | 乱码av麻豆丝袜熟女系列 | 久久 国产 尿 小便 嘘嘘 | 国内揄拍国内精品少妇国语 | 一二三四社区在线中文视频 | 红桃av一区二区三区在线无码av | av无码久久久久不卡免费网站 | 一本色道婷婷久久欧美 | 欧美日韩一区二区三区自拍 | 国产亚洲精品久久久久久久 | 在线观看国产一区二区三区 | 18禁黄网站男男禁片免费观看 | 婷婷五月综合缴情在线视频 | 动漫av一区二区在线观看 | 成年美女黄网站色大免费全看 | 欧美性色19p | 成人性做爰aaa片免费看 | 精品乱子伦一区二区三区 | 少妇性荡欲午夜性开放视频剧场 | 日本精品少妇一区二区三区 | 小sao货水好多真紧h无码视频 | 亚洲欧美色中文字幕在线 | 西西人体www44rt大胆高清 | 蜜桃臀无码内射一区二区三区 | 377p欧洲日本亚洲大胆 | 牲欲强的熟妇农村老妇女视频 | 精品久久综合1区2区3区激情 | 人人妻人人澡人人爽精品欧美 | 亚洲男人av天堂午夜在 | 奇米影视7777久久精品人人爽 | 久久综合激激的五月天 | 最近的中文字幕在线看视频 | av人摸人人人澡人人超碰下载 | 成人无码视频免费播放 | 两性色午夜视频免费播放 | 无码精品国产va在线观看dvd | 亚洲熟悉妇女xxx妇女av | 亚洲国产精品一区二区第一页 | 又粗又大又硬毛片免费看 | 中文字幕av无码一区二区三区电影 | 国产成人一区二区三区在线观看 | 呦交小u女精品视频 | 少妇性俱乐部纵欲狂欢电影 | 亚洲熟妇自偷自拍另类 | 精品一区二区三区无码免费视频 | 无遮挡国产高潮视频免费观看 | 国产色xx群视频射精 | 欧美 日韩 亚洲 在线 | 亚洲欧洲日本综合aⅴ在线 | 国产欧美精品一区二区三区 | 欧美丰满老熟妇xxxxx性 | 午夜丰满少妇性开放视频 | 亚洲爆乳无码专区 | 一本色道久久综合狠狠躁 | 大肉大捧一进一出好爽视频 | 日本免费一区二区三区最新 | 国产精品二区一区二区aⅴ污介绍 | 曰韩无码二三区中文字幕 | 少妇无套内谢久久久久 | 久9re热视频这里只有精品 | 国产人妻精品一区二区三区不卡 | 国产成人一区二区三区别 | 国产色在线 | 国产 | 欧美 丝袜 自拍 制服 另类 | 99久久亚洲精品无码毛片 | 免费无码av一区二区 | 精品国产国产综合精品 | 欧美日本精品一区二区三区 | 国产在线一区二区三区四区五区 | 国产在线精品一区二区高清不卡 | 曰韩无码二三区中文字幕 | 亚洲综合久久一区二区 | 熟妇人妻无乱码中文字幕 | 国产精品怡红院永久免费 | 亚洲熟妇色xxxxx亚洲 | 成人无码精品1区2区3区免费看 | 真人与拘做受免费视频 | 中文字幕精品av一区二区五区 | 人妻夜夜爽天天爽三区 | 久久国内精品自在自线 | 无码国内精品人妻少妇 | 国产激情精品一区二区三区 | 大肉大捧一进一出好爽视频 | 丁香啪啪综合成人亚洲 | 乱人伦人妻中文字幕无码 | 丰满少妇弄高潮了www | 亚洲中文字幕无码中文字在线 | 亚洲精品鲁一鲁一区二区三区 | 久久精品国产99久久6动漫 | 中国女人内谢69xxxx | 人人澡人摸人人添 | 999久久久国产精品消防器材 | 亚洲色www成人永久网址 | www一区二区www免费 | 亚洲自偷自拍另类第1页 | 无码av岛国片在线播放 | 最新国产麻豆aⅴ精品无码 | 激情爆乳一区二区三区 | 麻豆国产人妻欲求不满 | 成人aaa片一区国产精品 | 亚洲一区二区三区在线观看网站 | 久久99国产综合精品 | 色欲av亚洲一区无码少妇 | 国产成人精品久久亚洲高清不卡 | 嫩b人妻精品一区二区三区 | 日韩欧美中文字幕在线三区 | 久久久国产一区二区三区 | 人人妻人人澡人人爽人人精品浪潮 | 日本丰满护士爆乳xxxx | 无码人妻精品一区二区三区下载 | 精品久久8x国产免费观看 | 亚洲中文字幕无码中文字在线 | 国产精品亚洲一区二区三区喷水 | 亚洲精品鲁一鲁一区二区三区 | 亚洲日韩av一区二区三区中文 | 国产精品亚洲综合色区韩国 | 久久精品丝袜高跟鞋 | 一本久道久久综合婷婷五月 | 无码毛片视频一区二区本码 | 亚洲国产精品无码久久久久高潮 | 久久天天躁夜夜躁狠狠 | 国精品人妻无码一区二区三区蜜柚 | 麻豆人妻少妇精品无码专区 | 亚洲阿v天堂在线 | 欧美zoozzooz性欧美 | 伦伦影院午夜理论片 | 日韩精品成人一区二区三区 | 欧美怡红院免费全部视频 | 欧美日本日韩 | 装睡被陌生人摸出水好爽 | 国产精品丝袜黑色高跟鞋 | 国产人妻精品一区二区三区不卡 | 97资源共享在线视频 | 性生交大片免费看女人按摩摩 | 国产午夜无码视频在线观看 | 久久精品99久久香蕉国产色戒 | aⅴ亚洲 日韩 色 图网站 播放 | 国产人妻大战黑人第1集 | 欧美激情一区二区三区成人 | 国产又粗又硬又大爽黄老大爷视 | 精品欧洲av无码一区二区三区 | 狠狠色欧美亚洲狠狠色www | av无码电影一区二区三区 | 欧美日本免费一区二区三区 | 成人欧美一区二区三区黑人 | 97se亚洲精品一区 | 在线视频网站www色 | 亚洲а∨天堂久久精品2021 | 4hu四虎永久在线观看 | 国内综合精品午夜久久资源 | 亚洲国产成人av在线观看 | 亚洲一区二区三区在线观看网站 | 国内揄拍国内精品人妻 | 久久精品人人做人人综合试看 | 亚洲gv猛男gv无码男同 | 小鲜肉自慰网站xnxx | 欧洲vodafone精品性 | 精品国偷自产在线视频 | 日本成熟视频免费视频 | 国产性生大片免费观看性 | 国产精品内射视频免费 | 成人女人看片免费视频放人 | 乱码午夜-极国产极内射 | 中文字幕无码av波多野吉衣 | 欧美精品无码一区二区三区 | 久久精品国产一区二区三区肥胖 | 久久久久久久人妻无码中文字幕爆 | 欧美三级不卡在线观看 | 捆绑白丝粉色jk震动捧喷白浆 | 思思久久99热只有频精品66 | 精品无码国产自产拍在线观看蜜 | 久久亚洲中文字幕无码 | 女人被爽到呻吟gif动态图视看 | 99精品国产综合久久久久五月天 | 亚洲中文字幕av在天堂 | 东京一本一道一二三区 | 欧美 日韩 人妻 高清 中文 | 国产成人精品一区二区在线小狼 | 少妇无码吹潮 | 国产精品亚洲五月天高清 | 久久精品国产精品国产精品污 | 精品久久久久久亚洲精品 | 精品欧美一区二区三区久久久 | 两性色午夜视频免费播放 | 国产av久久久久精东av | 色欲久久久天天天综合网精品 | 亚洲 欧美 激情 小说 另类 | 欧美喷潮久久久xxxxx | 欧美成人午夜精品久久久 | 成 人 免费观看网站 | 久久zyz资源站无码中文动漫 | 久激情内射婷内射蜜桃人妖 | 无码av岛国片在线播放 | 亚洲熟女一区二区三区 | 亚洲日本一区二区三区在线 | 日本在线高清不卡免费播放 | 久久久中文字幕日本无吗 | 免费人成在线观看网站 | 人妻少妇精品久久 | 精品欧美一区二区三区久久久 | 国内精品一区二区三区不卡 | 日本www一道久久久免费榴莲 | 亚洲一区二区三区四区 | 精品日本一区二区三区在线观看 | 1000部啪啪未满十八勿入下载 | 国产偷自视频区视频 | 正在播放东北夫妻内射 | av香港经典三级级 在线 | 国产无遮挡吃胸膜奶免费看 | 乌克兰少妇性做爰 | 精品国产乱码久久久久乱码 | 亚洲精品午夜无码电影网 | 国产精品无码一区二区三区不卡 | 久久久久成人精品免费播放动漫 | 成人性做爰aaa片免费看 | 国产97在线 | 亚洲 | 俺去俺来也在线www色官网 | 国产在热线精品视频 | 2019午夜福利不卡片在线 | 国色天香社区在线视频 | 377p欧洲日本亚洲大胆 | 桃花色综合影院 | 午夜精品久久久久久久 | 国内精品九九久久久精品 | 亚洲精品一区二区三区婷婷月 | 一本色道婷婷久久欧美 | 精品久久久中文字幕人妻 | 精品熟女少妇av免费观看 | 亚洲人成无码网www | 欧美怡红院免费全部视频 | 中文字幕 人妻熟女 | aⅴ在线视频男人的天堂 | 亚洲国产高清在线观看视频 | 国产综合在线观看 | 欧美成人免费全部网站 | 色窝窝无码一区二区三区色欲 | 国产又粗又硬又大爽黄老大爷视 | 人人妻人人澡人人爽人人精品浪潮 | 国精产品一品二品国精品69xx | 女人被男人爽到呻吟的视频 | 精品无码国产自产拍在线观看蜜 | 无码人妻少妇伦在线电影 | 无码国产激情在线观看 | 久久国产劲爆∧v内射 | 曰本女人与公拘交酡免费视频 | 丝袜人妻一区二区三区 | av无码久久久久不卡免费网站 | 国产亚洲人成a在线v网站 | 无人区乱码一区二区三区 | 亚洲一区二区三区国产精华液 | 中文字幕色婷婷在线视频 | 国产内射爽爽大片视频社区在线 | 国产激情艳情在线看视频 | 国产亚洲美女精品久久久2020 | 激情亚洲一区国产精品 | 亚洲国产欧美日韩精品一区二区三区 | 久久亚洲精品成人无码 | 亚洲码国产精品高潮在线 | 大胆欧美熟妇xx | 夜夜高潮次次欢爽av女 | 一本色道婷婷久久欧美 | 亚洲呦女专区 | 欧美 日韩 人妻 高清 中文 | 久久亚洲精品成人无码 | 久久人人爽人人爽人人片ⅴ | 免费观看又污又黄的网站 | 丝袜足控一区二区三区 | 无码人妻精品一区二区三区不卡 | 巨爆乳无码视频在线观看 | 无码吃奶揉捏奶头高潮视频 | 香港三级日本三级妇三级 | 97夜夜澡人人爽人人喊中国片 | 亚洲成a人一区二区三区 | 欧美成人午夜精品久久久 | 国产猛烈高潮尖叫视频免费 | 东京无码熟妇人妻av在线网址 | 中文无码成人免费视频在线观看 | 日日鲁鲁鲁夜夜爽爽狠狠 | 亚洲午夜福利在线观看 | 一本加勒比波多野结衣 | 成年美女黄网站色大免费全看 | 在线看片无码永久免费视频 | 久热国产vs视频在线观看 | 玩弄少妇高潮ⅹxxxyw | 久久久中文字幕日本无吗 | 国产精品久久久久久亚洲毛片 | 国产亚洲精品久久久久久久久动漫 | 中文字幕无码视频专区 | 久久精品国产99久久6动漫 | 欧美熟妇另类久久久久久多毛 | 国产明星裸体无码xxxx视频 | 西西人体www44rt大胆高清 | 国产精品丝袜黑色高跟鞋 | 精品国精品国产自在久国产87 | 色婷婷综合激情综在线播放 | 日本精品少妇一区二区三区 | 丁香花在线影院观看在线播放 | 国产亚洲精品久久久久久大师 | 亚洲精品综合五月久久小说 | 激情人妻另类人妻伦 | 18黄暴禁片在线观看 | 国产精品久久久久久亚洲毛片 | 日日摸夜夜摸狠狠摸婷婷 | 亚洲熟熟妇xxxx | 久久综合香蕉国产蜜臀av | 亚洲熟妇色xxxxx亚洲 | 亚洲精品午夜无码电影网 | 毛片内射-百度 | 精品无码国产一区二区三区av | 亚洲国产成人av在线观看 | 国产欧美熟妇另类久久久 | 国产疯狂伦交大片 | 天天躁夜夜躁狠狠是什么心态 | 午夜精品一区二区三区在线观看 | 亚洲精品美女久久久久久久 | 欧美人与禽zoz0性伦交 | 国产凸凹视频一区二区 | 日韩人妻无码一区二区三区久久99 | 永久黄网站色视频免费直播 | 亚洲精品无码人妻无码 | 男人和女人高潮免费网站 | 亚洲中文字幕无码一久久区 | 久久人人爽人人爽人人片av高清 | 国产午夜亚洲精品不卡下载 | 国产精品.xx视频.xxtv | 伊人久久大香线蕉午夜 | 国产69精品久久久久app下载 | 老熟女重囗味hdxx69 | 国产sm调教视频在线观看 | 人妻互换免费中文字幕 | 欧美激情综合亚洲一二区 | 国产成人无码一二三区视频 | 久久伊人色av天堂九九小黄鸭 | 女人被爽到呻吟gif动态图视看 | 激情爆乳一区二区三区 | 九九久久精品国产免费看小说 | 中文无码精品a∨在线观看不卡 | 欧美激情内射喷水高潮 | 98国产精品综合一区二区三区 | 福利一区二区三区视频在线观看 | 国产精品无码mv在线观看 | 99久久99久久免费精品蜜桃 | 双乳奶水饱满少妇呻吟 | 中文无码精品a∨在线观看不卡 | 特大黑人娇小亚洲女 | 熟妇人妻中文av无码 | 亚洲一区二区三区四区 | 精品国产av色一区二区深夜久久 | 天天爽夜夜爽夜夜爽 | 成人欧美一区二区三区黑人 | 两性色午夜免费视频 | 国产精品99久久精品爆乳 | 中文无码成人免费视频在线观看 | 国产亚洲精品久久久ai换 | 国产精品久久久 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产无av码在线观看 | 中文字幕无码免费久久9一区9 | 精品水蜜桃久久久久久久 | 一二三四社区在线中文视频 | 99久久精品无码一区二区毛片 | 日本大香伊一区二区三区 | 亚洲高清偷拍一区二区三区 | 亚洲高清偷拍一区二区三区 | 青草青草久热国产精品 | 国产乱人伦av在线无码 | 中文无码精品a∨在线观看不卡 | 国产成人综合在线女婷五月99播放 | 欧美日韩一区二区免费视频 | 欧美老人巨大xxxx做受 | 夜夜高潮次次欢爽av女 | 国产av无码专区亚洲a∨毛片 | 午夜熟女插插xx免费视频 | 99精品无人区乱码1区2区3区 | 国内老熟妇对白xxxxhd | 亚洲a无码综合a国产av中文 | 人妻无码αv中文字幕久久琪琪布 | 久久精品国产亚洲精品 | 无码成人精品区在线观看 | 欧美 亚洲 国产 另类 | 丰满岳乱妇在线观看中字无码 | 成年女人永久免费看片 | 四十如虎的丰满熟妇啪啪 | 丝袜 中出 制服 人妻 美腿 | 在线观看国产一区二区三区 | 性生交片免费无码看人 | 国产成人无码区免费内射一片色欲 | 国内精品九九久久久精品 | 色综合久久久无码中文字幕 | 国产婷婷色一区二区三区在线 | 丰满护士巨好爽好大乳 | 国产内射爽爽大片视频社区在线 | 国产高潮视频在线观看 | 高清不卡一区二区三区 | 国产精品久久久久无码av色戒 | 奇米综合四色77777久久 东京无码熟妇人妻av在线网址 | 亚洲精品午夜国产va久久成人 | 熟妇激情内射com | 国产午夜手机精彩视频 | 麻花豆传媒剧国产免费mv在线 | 亚洲理论电影在线观看 | 国产成人精品必看 | 国产成人无码av片在线观看不卡 | 人人爽人人澡人人人妻 | 人妻少妇被猛烈进入中文字幕 | 国产又粗又硬又大爽黄老大爷视 | 免费男性肉肉影院 | 国精品人妻无码一区二区三区蜜柚 | 十八禁视频网站在线观看 | 奇米影视7777久久精品 | 少妇性l交大片欧洲热妇乱xxx | 精品亚洲成av人在线观看 | 日本www一道久久久免费榴莲 | 美女毛片一区二区三区四区 | 狠狠亚洲超碰狼人久久 | 久久99精品国产麻豆 | 无码乱肉视频免费大全合集 | 九九综合va免费看 | 中文字幕无码av激情不卡 | 久久国产精品精品国产色婷婷 | 国产成人无码av片在线观看不卡 | 最近中文2019字幕第二页 | 亚洲日韩av片在线观看 | 亚洲综合无码一区二区三区 | 奇米影视7777久久精品人人爽 | 亚洲日韩av一区二区三区中文 | 日日夜夜撸啊撸 | 国产人妖乱国产精品人妖 | 国产av一区二区三区最新精品 | 国产无套粉嫩白浆在线 | 性啪啪chinese东北女人 | 久久综合给久久狠狠97色 | 国产美女精品一区二区三区 | 精品国产aⅴ无码一区二区 | 欧美三级a做爰在线观看 | 国产真实乱对白精彩久久 | 美女扒开屁股让男人桶 | 又湿又紧又大又爽a视频国产 | 捆绑白丝粉色jk震动捧喷白浆 | 亚洲の无码国产の无码影院 | 高潮毛片无遮挡高清免费视频 | 久久午夜无码鲁丝片午夜精品 | 中文无码成人免费视频在线观看 | 国产av一区二区精品久久凹凸 | 国产电影无码午夜在线播放 | 丰腴饱满的极品熟妇 | 亚洲国产一区二区三区在线观看 | 亚洲熟妇自偷自拍另类 | 大肉大捧一进一出视频出来呀 | 麻豆国产人妻欲求不满 | 色综合久久88色综合天天 | 国产在热线精品视频 | 真人与拘做受免费视频一 | 网友自拍区视频精品 | 天干天干啦夜天干天2017 | 亚洲国产精品成人久久蜜臀 | 女人被男人爽到呻吟的视频 | 红桃av一区二区三区在线无码av | 1000部啪啪未满十八勿入下载 | 99riav国产精品视频 | 国产成人午夜福利在线播放 | 国色天香社区在线视频 | 精品无码一区二区三区爱欲 | 久久精品人妻少妇一区二区三区 | 无套内谢老熟女 | 亚洲精品午夜国产va久久成人 | 国产偷抇久久精品a片69 | 香蕉久久久久久av成人 | 国产在线一区二区三区四区五区 | 激情内射亚州一区二区三区爱妻 | 久久久中文字幕日本无吗 | 九九综合va免费看 | 欧美黑人巨大xxxxx | 天天做天天爱天天爽综合网 | 波多野结衣一区二区三区av免费 | 女高中生第一次破苞av | 中文字幕无码免费久久99 | 国产精品视频免费播放 | 国产精品成人av在线观看 | 亚洲一区二区三区偷拍女厕 | 国产后入清纯学生妹 | 亚洲精品鲁一鲁一区二区三区 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 牲交欧美兽交欧美 | 青春草在线视频免费观看 | 日本爽爽爽爽爽爽在线观看免 | 在线精品亚洲一区二区 | 久久zyz资源站无码中文动漫 | 麻豆精产国品 | 日韩人妻无码一区二区三区久久99 | 丰满人妻被黑人猛烈进入 | 无码吃奶揉捏奶头高潮视频 | 一本精品99久久精品77 | 沈阳熟女露脸对白视频 | 日日鲁鲁鲁夜夜爽爽狠狠 | 99久久亚洲精品无码毛片 | 18禁黄网站男男禁片免费观看 | 波多野结衣乳巨码无在线观看 | 久久精品成人欧美大片 | 内射白嫩少妇超碰 | 一本加勒比波多野结衣 | 国产精品人人妻人人爽 | 男女爱爱好爽视频免费看 | 国产成人综合在线女婷五月99播放 | 久精品国产欧美亚洲色aⅴ大片 | 最近免费中文字幕中文高清百度 | 免费网站看v片在线18禁无码 | 波多野42部无码喷潮在线 | 水蜜桃av无码 | 欧美国产日产一区二区 | 在线观看免费人成视频 | 欧美 亚洲 国产 另类 | 77777熟女视频在线观看 а天堂中文在线官网 | 亚洲综合在线一区二区三区 | 久久久久久a亚洲欧洲av冫 | 亚洲熟妇色xxxxx亚洲 | 丰满少妇女裸体bbw | 成人av无码一区二区三区 | 激情国产av做激情国产爱 | 性欧美疯狂xxxxbbbb | 无码精品人妻一区二区三区av | 国产精品嫩草久久久久 | 日韩av无码一区二区三区不卡 | 国产三级久久久精品麻豆三级 | 久久精品人妻少妇一区二区三区 | 日本饥渴人妻欲求不满 | 无码av免费一区二区三区试看 | 国产网红无码精品视频 | 老子影院午夜精品无码 | 美女极度色诱视频国产 | 大肉大捧一进一出视频出来呀 | 学生妹亚洲一区二区 | 国产成人无码午夜视频在线观看 | 亚洲一区二区三区香蕉 | 国产av一区二区精品久久凹凸 | 久久无码专区国产精品s | 丰满护士巨好爽好大乳 | 麻豆av传媒蜜桃天美传媒 | 亚洲中文字幕在线观看 | 日韩精品无码一区二区中文字幕 | 国内丰满熟女出轨videos | 国产精品无码mv在线观看 | 成人精品一区二区三区中文字幕 | 粉嫩少妇内射浓精videos | 成人精品一区二区三区中文字幕 | 国产在热线精品视频 | 国产精品爱久久久久久久 | 国产精品久免费的黄网站 | 久久99久久99精品中文字幕 | 国产精品香蕉在线观看 | 18禁黄网站男男禁片免费观看 | 日本饥渴人妻欲求不满 | 精品夜夜澡人妻无码av蜜桃 | 国产人妻精品午夜福利免费 | 亚洲天堂2017无码中文 | 国精品人妻无码一区二区三区蜜柚 | 国产精品永久免费视频 | 成人三级无码视频在线观看 | 亚洲精品中文字幕乱码 | 国产农村乱对白刺激视频 | 亚洲中文字幕久久无码 | 九九在线中文字幕无码 | 人人爽人人澡人人人妻 | 久在线观看福利视频 | 亚洲无人区午夜福利码高清完整版 | aa片在线观看视频在线播放 | 乱中年女人伦av三区 | 日欧一片内射va在线影院 | 国产精品久久久久久无码 | 久久人人97超碰a片精品 | 日本一卡二卡不卡视频查询 | av无码久久久久不卡免费网站 | 波多野结衣一区二区三区av免费 | 国产亚洲视频中文字幕97精品 | 国产精品国产自线拍免费软件 | 亚洲欧美日韩成人高清在线一区 | 国产成人无码专区 | 精品人妻人人做人人爽夜夜爽 | 老熟女乱子伦 | 国产av人人夜夜澡人人爽麻豆 | 国产乱人伦av在线无码 | 一二三四在线观看免费视频 | 日韩精品一区二区av在线 | 欧美丰满老熟妇xxxxx性 | 国产成人无码av在线影院 | 日韩视频 中文字幕 视频一区 | 男女爱爱好爽视频免费看 | 欧洲精品码一区二区三区免费看 | 免费无码一区二区三区蜜桃大 | 国产女主播喷水视频在线观看 | 女高中生第一次破苞av | 樱花草在线社区www | 亚洲热妇无码av在线播放 | 精品无码国产一区二区三区av | 亚洲春色在线视频 | 精品欧洲av无码一区二区三区 | 一本无码人妻在中文字幕免费 | 中文字幕无码免费久久9一区9 | 夜夜夜高潮夜夜爽夜夜爰爰 | www国产精品内射老师 | 欧美野外疯狂做受xxxx高潮 | 夜夜躁日日躁狠狠久久av | 国产欧美亚洲精品a | 少妇人妻av毛片在线看 | 强辱丰满人妻hd中文字幕 | 天天做天天爱天天爽综合网 | 亚洲一区二区三区播放 | 人妻插b视频一区二区三区 | 欧美日韩久久久精品a片 | 性开放的女人aaa片 | 性欧美大战久久久久久久 | 久久亚洲中文字幕精品一区 | 欧美高清在线精品一区 | 亚洲熟妇色xxxxx欧美老妇 | 中文字幕人妻无码一夲道 | 纯爱无遮挡h肉动漫在线播放 | 野外少妇愉情中文字幕 | 欧美猛少妇色xxxxx | 亚洲啪av永久无码精品放毛片 | 国产艳妇av在线观看果冻传媒 | 一本无码人妻在中文字幕免费 | 中文字幕精品av一区二区五区 | 欧美日韩一区二区三区自拍 | 亚洲熟熟妇xxxx | 成在人线av无码免费 | 男人扒开女人内裤强吻桶进去 | 精品午夜福利在线观看 | 精品夜夜澡人妻无码av蜜桃 | 图片区 小说区 区 亚洲五月 | 国产乱人伦av在线无码 | 99久久99久久免费精品蜜桃 | 国产另类ts人妖一区二区 | 国产成人综合在线女婷五月99播放 | 77777熟女视频在线观看 а天堂中文在线官网 | 18精品久久久无码午夜福利 | 精品国产aⅴ无码一区二区 | 激情人妻另类人妻伦 | 久久人妻内射无码一区三区 | 国产一区二区三区日韩精品 | 国产精品自产拍在线观看 | 亚洲国产精品毛片av不卡在线 | 国产特级毛片aaaaaa高潮流水 | 国产无遮挡吃胸膜奶免费看 | 成年美女黄网站色大免费全看 | 国产精品久久久久久久9999 | 国产av无码专区亚洲a∨毛片 | 国产亚洲欧美在线专区 | 免费无码一区二区三区蜜桃大 | 少妇的肉体aa片免费 | 在线看片无码永久免费视频 | 亚洲欧美精品aaaaaa片 | 国产xxx69麻豆国语对白 | 天堂一区人妻无码 | 欧美喷潮久久久xxxxx | 色欲人妻aaaaaaa无码 | 无码av免费一区二区三区试看 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲爆乳精品无码一区二区三区 | 在线a亚洲视频播放在线观看 | 天天摸天天碰天天添 | 国产亚洲欧美在线专区 | 久久国产精品偷任你爽任你 | 377p欧洲日本亚洲大胆 | 中文亚洲成a人片在线观看 | 5858s亚洲色大成网站www | 男女爱爱好爽视频免费看 | 2020久久超碰国产精品最新 | 日韩亚洲欧美精品综合 | 午夜熟女插插xx免费视频 | 国产艳妇av在线观看果冻传媒 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 四十如虎的丰满熟妇啪啪 | 亚洲中文字幕久久无码 | 国产偷自视频区视频 | 老子影院午夜精品无码 | 水蜜桃亚洲一二三四在线 | 国产精品亚洲综合色区韩国 | 亚洲男人av香蕉爽爽爽爽 | 老头边吃奶边弄进去呻吟 | 亚洲欧美日韩国产精品一区二区 | 玩弄人妻少妇500系列视频 | 真人与拘做受免费视频 | 青草青草久热国产精品 | 真人与拘做受免费视频一 | 精品人妻人人做人人爽夜夜爽 | 日日天日日夜日日摸 | 亚洲欧美国产精品久久 | 久久天天躁夜夜躁狠狠 | 人人妻人人澡人人爽人人精品 | 国产成人人人97超碰超爽8 | 亚拍精品一区二区三区探花 | www成人国产高清内射 | 国产97色在线 | 免 | 捆绑白丝粉色jk震动捧喷白浆 | 人妻少妇精品无码专区二区 | 国产又粗又硬又大爽黄老大爷视 | 国产色视频一区二区三区 | 成人免费视频在线观看 | 日韩精品无码一本二本三本色 | 亚洲精品国产品国语在线观看 | 亚洲欧美国产精品专区久久 | 黑人巨大精品欧美一区二区 | 性史性农村dvd毛片 | 欧美日韩在线亚洲综合国产人 | 中文字幕乱码中文乱码51精品 | 奇米影视888欧美在线观看 | 国语自产偷拍精品视频偷 | 小sao货水好多真紧h无码视频 | 人人澡人人妻人人爽人人蜜桃 | 2020最新国产自产精品 | 久久久精品国产sm最大网站 | 国产精品沙发午睡系列 | 特大黑人娇小亚洲女 | 波多野结衣乳巨码无在线观看 | 久久国产精品二国产精品 | 国产精品自产拍在线观看 | 桃花色综合影院 | 又色又爽又黄的美女裸体网站 | 欧洲欧美人成视频在线 | 性色欲网站人妻丰满中文久久不卡 | 午夜精品一区二区三区的区别 | 又大又硬又爽免费视频 | 亚洲爆乳精品无码一区二区三区 | 一二三四在线观看免费视频 | 人妻有码中文字幕在线 | 国产精品成人av在线观看 | 激情国产av做激情国产爱 | 性生交大片免费看l | 精品国产一区二区三区四区 | 亚洲欧美精品aaaaaa片 | 亚洲国产高清在线观看视频 | 欧美第一黄网免费网站 | 露脸叫床粗话东北少妇 | 亚洲精品久久久久avwww潮水 | 久久综合网欧美色妞网 | 天堂一区人妻无码 | 无码国产色欲xxxxx视频 | 精品偷拍一区二区三区在线看 | 国产无套粉嫩白浆在线 | 国产农村乱对白刺激视频 | 亚洲精品成人福利网站 | 美女黄网站人色视频免费国产 | 少妇无套内谢久久久久 | 国产亚洲人成a在线v网站 | 久久久无码中文字幕久... | 国内丰满熟女出轨videos | 粉嫩少妇内射浓精videos | 国精品人妻无码一区二区三区蜜柚 | 麻豆国产人妻欲求不满 | 性做久久久久久久免费看 | 亚洲欧美国产精品久久 | 国产熟女一区二区三区四区五区 | 18禁黄网站男男禁片免费观看 | 一个人看的www免费视频在线观看 | 欧美日韩久久久精品a片 | 亚洲成a人一区二区三区 | 在线看片无码永久免费视频 | 久久99精品国产.久久久久 | 久久国产精品偷任你爽任你 | 免费播放一区二区三区 | 色老头在线一区二区三区 | а√天堂www在线天堂小说 | 亚洲人成网站在线播放942 | 精品无人区无码乱码毛片国产 | 久久99精品久久久久久 | 无码av最新清无码专区吞精 | 九月婷婷人人澡人人添人人爽 | 青青久在线视频免费观看 | 激情爆乳一区二区三区 | 无码av岛国片在线播放 | 在线亚洲高清揄拍自拍一品区 | 日日碰狠狠躁久久躁蜜桃 | 最新国产乱人伦偷精品免费网站 | 国产亚av手机在线观看 | 在线精品亚洲一区二区 | 黄网在线观看免费网站 | 东北女人啪啪对白 | 亚洲熟妇自偷自拍另类 | 久久亚洲中文字幕无码 | 美女张开腿让人桶 | 黑森林福利视频导航 | 波多野结衣av一区二区全免费观看 | 色老头在线一区二区三区 | 国产亚洲人成在线播放 | 牛和人交xxxx欧美 | 1000部啪啪未满十八勿入下载 | 亚洲日韩精品欧美一区二区 | 国产极品美女高潮无套在线观看 | 在线观看欧美一区二区三区 | 亚洲色无码一区二区三区 | 久久精品人人做人人综合试看 | 国产极品美女高潮无套在线观看 | 中文字幕无码日韩专区 | 亚洲熟妇色xxxxx欧美老妇y | 人妻少妇精品视频专区 | 亚洲欧美日韩成人高清在线一区 | 丰腴饱满的极品熟妇 | 亚洲精品国产a久久久久久 | 精品国产福利一区二区 | 少妇厨房愉情理9仑片视频 | 无码成人精品区在线观看 | 国产人妖乱国产精品人妖 | 久久aⅴ免费观看 | 国产激情综合五月久久 | 久久精品国产日本波多野结衣 | 精品国产一区av天美传媒 | 乱中年女人伦av三区 | 国产激情精品一区二区三区 | 中文无码精品a∨在线观看不卡 | 国产一区二区三区精品视频 | 国产人妖乱国产精品人妖 | 无码国产色欲xxxxx视频 | 国产9 9在线 | 中文 | 亚洲欧美日韩综合久久久 | 少妇无码一区二区二三区 | 亚洲s色大片在线观看 | 亚洲七七久久桃花影院 | 中文字幕久久久久人妻 | 亚洲熟妇色xxxxx欧美老妇y | 丰满岳乱妇在线观看中字无码 | 国产无av码在线观看 | 成 人影片 免费观看 | 亚洲成av人在线观看网址 | 狠狠cao日日穞夜夜穞av | 色一情一乱一伦一区二区三欧美 | 东京热男人av天堂 | 国产两女互慰高潮视频在线观看 | 亚洲中文字幕久久无码 | www国产精品内射老师 | 国产一区二区三区日韩精品 | 性欧美疯狂xxxxbbbb | 国产av一区二区三区最新精品 | 国产熟女一区二区三区四区五区 | 中文毛片无遮挡高清免费 | 无遮挡啪啪摇乳动态图 | 国产特级毛片aaaaaa高潮流水 | 中文字幕人妻无码一区二区三区 | 久久 国产 尿 小便 嘘嘘 | 亚洲国产欧美日韩精品一区二区三区 | 精品无码一区二区三区爱欲 | 精品厕所偷拍各类美女tp嘘嘘 | 撕开奶罩揉吮奶头视频 | 国产猛烈高潮尖叫视频免费 | 狠狠色欧美亚洲狠狠色www | 国内精品久久毛片一区二区 | 麻豆精产国品 | 又大又紧又粉嫩18p少妇 | 最新版天堂资源中文官网 | 欧美大屁股xxxxhd黑色 | 免费无码的av片在线观看 | 午夜精品一区二区三区在线观看 | 高潮毛片无遮挡高清免费 | 国产一精品一av一免费 | 亲嘴扒胸摸屁股激烈网站 | 免费播放一区二区三区 | 国产精品久久久久久无码 | 撕开奶罩揉吮奶头视频 | 亚洲狠狠色丁香婷婷综合 | 玩弄少妇高潮ⅹxxxyw | 荫蒂添的好舒服视频囗交 | 无码精品国产va在线观看dvd | 粉嫩少妇内射浓精videos | 国产精品第一区揄拍无码 | 人人妻人人澡人人爽欧美一区 | 图片小说视频一区二区 | 国产精品永久免费视频 | 国产精品久久久久影院嫩草 | 国产av一区二区三区最新精品 | 性开放的女人aaa片 | 亚洲gv猛男gv无码男同 | 丰满少妇女裸体bbw | 伊人久久婷婷五月综合97色 | 欧美猛少妇色xxxxx | 精品午夜福利在线观看 | 久久精品国产99久久6动漫 | 国产在线一区二区三区四区五区 | 欧美第一黄网免费网站 | 国产精品嫩草久久久久 | 日日碰狠狠躁久久躁蜜桃 | 久久亚洲精品中文字幕无男同 | 国产精品a成v人在线播放 | 丰满肥臀大屁股熟妇激情视频 | 日本大香伊一区二区三区 | 日韩av无码一区二区三区 | 久久亚洲中文字幕无码 | 日韩 欧美 动漫 国产 制服 | 国产人妻精品午夜福利免费 | 久精品国产欧美亚洲色aⅴ大片 | 日韩av无码中文无码电影 | 精品成在人线av无码免费看 | 亚洲国产一区二区三区在线观看 | 午夜福利不卡在线视频 | 最近免费中文字幕中文高清百度 | 最近免费中文字幕中文高清百度 | 日本又色又爽又黄的a片18禁 | 大色综合色综合网站 | 四虎永久在线精品免费网址 | 人人爽人人澡人人高潮 | 精品国产乱码久久久久乱码 | 国产人成高清在线视频99最全资源 | 成人无码精品1区2区3区免费看 | 亚洲色成人中文字幕网站 | 欧美变态另类xxxx | 亚洲爆乳精品无码一区二区三区 | 久9re热视频这里只有精品 | 久久精品丝袜高跟鞋 | 红桃av一区二区三区在线无码av | 日本成熟视频免费视频 | 荫蒂添的好舒服视频囗交 | 51国偷自产一区二区三区 | 久久精品国产精品国产精品污 | 午夜熟女插插xx免费视频 | 两性色午夜免费视频 | 亚洲精品一区二区三区大桥未久 | 沈阳熟女露脸对白视频 | 奇米影视7777久久精品 | 伊人久久大香线蕉亚洲 | 国产精品亚洲а∨无码播放麻豆 | 丰满人妻精品国产99aⅴ | 色五月五月丁香亚洲综合网 | 国产av无码专区亚洲a∨毛片 | 免费观看黄网站 | 亚洲国产精品一区二区第一页 | 国产热a欧美热a在线视频 | 久久久久免费看成人影片 | 成熟女人特级毛片www免费 | 国产激情综合五月久久 | 夜夜高潮次次欢爽av女 | 最新国产乱人伦偷精品免费网站 | 欧美猛少妇色xxxxx | 婷婷丁香五月天综合东京热 | 国产成人一区二区三区别 | 樱花草在线播放免费中文 | 国产午夜无码精品免费看 | 日本精品久久久久中文字幕 | 精品厕所偷拍各类美女tp嘘嘘 | 中文字幕人妻丝袜二区 | 国产精品久久久久久久9999 | 久在线观看福利视频 | 国产亚洲精品精品国产亚洲综合 | 伊在人天堂亚洲香蕉精品区 | 国产精品手机免费 | 97久久国产亚洲精品超碰热 | 高清无码午夜福利视频 | 97夜夜澡人人爽人人喊中国片 | 女人和拘做爰正片视频 | 欧美变态另类xxxx | 日本成熟视频免费视频 | 伊在人天堂亚洲香蕉精品区 | 无遮无挡爽爽免费视频 | 婷婷丁香六月激情综合啪 | 少妇性荡欲午夜性开放视频剧场 | 国产成人无码一二三区视频 | 亚洲国产精品成人久久蜜臀 | 无码福利日韩神码福利片 | 夜夜高潮次次欢爽av女 | 久久精品女人的天堂av | 乱码午夜-极国产极内射 | 国产精品久免费的黄网站 | 亚洲日韩乱码中文无码蜜桃臀网站 | 免费无码av一区二区 | 国产在线无码精品电影网 | 久久综合给久久狠狠97色 | 国产无遮挡吃胸膜奶免费看 | 狠狠色噜噜狠狠狠狠7777米奇 | 在线视频网站www色 | 最近免费中文字幕中文高清百度 | 999久久久国产精品消防器材 | av小次郎收藏 | 久久久久se色偷偷亚洲精品av | 久久综合九色综合欧美狠狠 | 色窝窝无码一区二区三区色欲 | 国产一精品一av一免费 | www国产亚洲精品久久网站 | 亚洲s码欧洲m码国产av | 国产麻豆精品一区二区三区v视界 | 日本熟妇大屁股人妻 | 国产真人无遮挡作爱免费视频 | 成人动漫在线观看 | 亚洲精品综合一区二区三区在线 | 俺去俺来也www色官网 | 日本熟妇乱子伦xxxx | 人妻少妇精品视频专区 | 中文毛片无遮挡高清免费 | 人人澡人人妻人人爽人人蜜桃 | 乌克兰少妇性做爰 | 无码精品国产va在线观看dvd | 欧美刺激性大交 | 久久久久成人片免费观看蜜芽 | 久久午夜无码鲁丝片秋霞 | 中文字幕乱妇无码av在线 | 国产免费久久精品国产传媒 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产激情无码一区二区app | 妺妺窝人体色www在线小说 | 国产乱人无码伦av在线a | 欧美国产日韩久久mv | 亚洲精品一区二区三区在线观看 | 人妻少妇精品无码专区二区 | 97人妻精品一区二区三区 | 久久国产精品精品国产色婷婷 | 国产又爽又黄又刺激的视频 | 久久www免费人成人片 | 亚洲日韩精品欧美一区二区 | 国产乱人伦av在线无码 | 国产精品毛多多水多 | 欧美老妇与禽交 | 欧美刺激性大交 | 最新版天堂资源中文官网 | 亚洲国产午夜精品理论片 | 国产区女主播在线观看 | 国产午夜亚洲精品不卡下载 | 国产无遮挡又黄又爽又色 | 美女毛片一区二区三区四区 | 欧美熟妇另类久久久久久不卡 | 亚洲熟悉妇女xxx妇女av | 亚洲色欲色欲天天天www | 精品久久久无码人妻字幂 | 麻豆国产人妻欲求不满 | 色偷偷人人澡人人爽人人模 | 精品偷自拍另类在线观看 | 学生妹亚洲一区二区 | 啦啦啦www在线观看免费视频 | 国产精品资源一区二区 | 久久精品女人天堂av免费观看 | 免费观看激色视频网站 | 亚洲阿v天堂在线 | 精品久久久久久人妻无码中文字幕 | 一本一道久久综合久久 | 亚洲精品久久久久中文第一幕 | 国产国语老龄妇女a片 | a在线观看免费网站大全 | 国产另类ts人妖一区二区 | 无码国内精品人妻少妇 | 国产亚洲精品久久久闺蜜 | 青春草在线视频免费观看 | 中文字幕人成乱码熟女app | 国产偷抇久久精品a片69 | 欧美老人巨大xxxx做受 | 国产精品福利视频导航 | 亚洲精品一区二区三区在线 | 精品无人区无码乱码毛片国产 | 精品国产aⅴ无码一区二区 |