精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

什么是零拷貝?

開發 前端
以 Linux 操作系統為例,真正意義上大家比較認可的零拷貝主要有 sendfile、splice 等方法,它們完全通過 DMA 控制器來實現數據的拷貝,無需 CPU 來參與數據拷貝的過程,這個過程被稱為零拷貝。

一、摘要

相信不少的網友,在很多的博客文章里面,已經見到過零拷貝這個詞,會不禁的發出一些疑問,什么是零拷貝?

從字面上我們很容易理解出,零拷貝包含兩個意思:

  • 拷貝:就是指數據從一個存儲區域轉移到另一個存儲區域。
  • 零:它表示拷貝數據的次數為 0。

合起來理解,零拷貝就是不需要將數據從一個存儲區域復制到另一個存儲區域。

果真是這樣的嗎?

最早的零拷貝定義,來源于 Linux 系統的 sendfile 方法邏輯!

在 Linux 2.4 內核中,sendfile 系統調用方法,可以將磁盤數據通過 DMA 拷貝到內核態 Buffer 后,再通過 DMA 拷貝到 NIC Buffer(socket buffer),無需 CPU 拷貝,這個過程被稱之為零拷貝。

從這段描述里面我們可以得知,站在操作系統的角度,零拷貝沒有說不需要拷貝數據,而是省掉了 CPU 拷貝環節,減少了不必要的拷貝次數,提升數據拷貝效率。

要想深度的了解這里面的原理,我們還得從 IO 拷貝機制說起!

二、IO 拷貝機制介紹

2.1、傳統數據拷貝流程

以客戶端從服務器下載文件為例,熟悉服務端開發的同學可能知道,服務端需要做兩件事:

  • 第一步:從磁盤中讀取文件內容
  • 第二步:將文件內容通過網絡傳輸給客戶端

事實上看似簡單的操作,里面的流程卻沒那么簡單,例如應用程序從磁盤中讀取文件內容的操作,大體會經過以下幾個流程:

  • 第一步:用戶應用程序調用 read 方法,向操作系統發起 IO 請求,CPU 上下文從用戶態轉為內核態,完成第一次 CPU 切換
  • 第二步:操作系統通過 DMA 控制器從磁盤中讀數據,并把數據存儲到內核緩沖區
  • 第三步:CPU 把內核緩沖區的數據,拷貝到用戶緩沖區,同時上下文從內核態轉為用戶態,完成第二次 CPU 切換

整個讀取數據的過程,完成了 1 次 DMA 拷貝,1 次 CPU 拷貝,2 次 CPU 切換;反之寫入數據的過程,也是一樣的。

整個拷貝過程,可以用如下流程圖來描述!

圖片圖片

從上圖,我們可以得出如下結論,4 次拷貝次數、4 次上下文切換次數。

  • 數據拷貝次數:2 次 DMA 拷貝,2 次 CPU 拷貝
  • CPU 切換次數:4 次用戶態和內核態的切換

而實際 IO 讀寫,有時候需要進行 IO 中斷,同時也需要 CPU 響應中斷,拷貝次數和切換次數比預期的還要多,以至于當客戶端進行資源文件下載的時候,傳輸速度總是不盡人意。

那有沒有好的辦法來提升資源拷貝的速度呢?

答案是肯定的,傳統的數據拷貝流程還有很大的優化空間。

下面我們一起來看看幾種其它的拷貝方式。

2.2、mmap 內存映射拷貝流程

mmap 內存映射的拷貝,指的是將用戶應用程序的緩沖區和操作系統的內核緩沖區進行映射處理,數據在內核緩沖區和用戶緩沖區之間的 CPU 拷貝將其省略,進而加快資源拷貝效率。

整個拷貝過程,可以用如下流程圖來描述!

圖片圖片

mmap 內存映射拷貝流程,從上圖可以得出如下結論:

  • 數據拷貝次數:2 次 DMA 拷貝,1 次 CPU 拷貝
  • CPU 切換次數:4 次用戶態和內核態的切換

整個過程省掉了數據在內核緩沖區和用戶緩沖區之間的 CPU 拷貝環節,在實際的應用中,對資源的拷貝能提升不少。

2.3、Linux 系統 sendfile 拷貝流程

在 Linux 2.1 內核版本中,引入了一個系統調用方法:sendfile。

當調用 sendfile() 時,DMA 將磁盤數據復制到內核緩沖區 kernel buffer;然后將內核中的 kernel buffer 直接拷貝到 socket buffer;最后利用 DMA 將  socket buffer 通過網卡傳輸給客戶端。

整個拷貝過程,可以用如下流程圖來描述!

圖片圖片

Linux 系統 sendfile 拷貝流程,從上圖可以得出如下結論:

  • 數據拷貝次數:2 次 DMA 拷貝,1 次 CPU 拷貝
  • CPU 切換次數:2 次用戶態和內核態的切換

相比 mmap 內存映射方式,Linux 2.1 內核版本中 sendfile 拷貝流程省掉了 2 次用戶態和內核態的切換,同時內核緩沖區和用戶緩沖區也無需建立內存映射,對資源的拷貝能提升不少。

2.4、sendfile With DMA scatter/gather 拷貝流程

在 Linux 2.4 內核版本中,對 sendfile 系統方法做了優化升級,引入 SG-DMA 技術,需要 DMA 控制器支持。

其實就是對 DMA 拷貝加入了 scatter/gather 操作,它可以直接從內核空間緩沖區中將數據讀取到網卡。使用這個特點來實現數據拷貝,可以多省去一次 CPU 拷貝。

整個拷貝過程,可以用如下流程圖來描述!

圖片圖片

Linux 系統 sendfile With DMA scatter/gather 拷貝流程,從上圖可以得出如下結論:

  • 數據拷貝次數:2 次 DMA 拷貝,0 次 CPU 拷貝
  • CPU 切換次數:2 次用戶態和內核態的切換

可以發現,sendfile With DMA scatter/gather 實現的拷貝,其中 2 次數據拷貝都是 DMA 拷貝,全程都沒有通過 CPU 來拷貝數據,所有的數據都是通過 DMA 來進行傳輸的,這就是操作系統真正意義上的零拷貝(Zero-copy) 技術,相比其他拷貝方式,傳輸效率最佳。

2.5、Linux 系統 splice 零拷貝流程

在 Linux 2.6.17 內核版本中,引入了 splice 系統調用方法,和 sendfile 方法不同的是,splice 不需要硬件支持。

它將數據從磁盤讀取到 OS 內核緩沖區后,內核緩沖區和 socket 緩沖區之間建立管道來傳輸數據,避免了兩者之間的 CPU 拷貝操作。

整個拷貝過程,可以用如下流程圖來描述!

圖片圖片

Linux 系統 splice 拷貝流程,從上圖可以得出如下結論:

  • 數據拷貝次數:2 次 DMA 拷貝,0 次 CPU 拷貝
  • CPU 切換次數:2 次用戶態和內核態的切換

Linux 系統 splice 方法邏輯拷貝,也是操作系統真正意義上的零拷貝。

三、IO 拷貝機制對比

從上面的 IO 拷貝機制可以看出,無論是傳統 IO 方式,還是引入零拷貝之后,2次 DMA copy 是都少不了的,唯一的區別就是省掉 CPU 參與環節的方式不同。

以 Linux 系統為例,拷貝機制對比結果如下!

圖片圖片

需要注意的地方是,零拷貝所有的方式,都需要操作系統支持,具體采用哪種方式,由操作系統來決定。

四、相關概念說明

上文中我們提到了幾個很少見的名詞,比如 DMA,用戶空間,內核空間等。它們到底是什么意思呢?

4.1、DMA 介紹

DMA,英文全稱是 Direct Memory Access,即直接內存訪問。DMA 本質上是一塊主板上獨立的芯片,允許外設設備和內存存儲器之間直接進行 IO 數據傳輸,其過程不需要 CPU 的參與。

4.2、內核空間和用戶空間介紹

操作系統的核心是內核,與普通的應用程序不同,它可以訪問受保護的內存空間,也有訪問底層硬件設備的權限。

為了避免用戶進程直接操作內核,保證內核安全,操作系統將虛擬內存劃分為兩部分,一部分是內核空間(Kernel-space),一部分是用戶空間(User-space)。在 Linux 系統中,內核模塊運行在內核空間,對應的進程處于內核態;而用戶程序運行在用戶空間,對應的進程處于用戶態。

內核空間總是駐留在內存中,它是為操作系統的內核保留的。應用程序是不允許直接在該區域進行讀寫或直接調用內核代碼定義的函數。

當啟動某個應用程序時,操作系統會給應用程序分配一個單獨的用戶空間,其實就是一個用戶獨享的虛擬內存,每個普通的用戶進程之間的用戶空間是完全隔離的、不共享的,當用戶進程結束的時候,用戶空間的虛擬內存也會隨之釋放。

同時處于用戶態的進程不能訪問內核空間中的數據,也不能直接調用內核函數的,如果要調用系統資源,就要將進程切換到內核態,由內核程序來進行操作。

五、Java 零拷貝實現介紹

Linux 提供的零拷貝技術,Java 并不是全部支持,目前只支持以下 2 種。

  • mmap(內存映射)
  • sendfile

5.1、Java NIO 對 mmap 的支持

Java NIO 有一個MappedByteBuffer的類,可以用來實現內存映射。它的底層是調用了 Linux 內核的mmap的 API。

實例代碼如下:

public static void main(String[] args) {
    try {
        FileChannel readChannel = FileChannel.open(Paths.get("a.txt"), StandardOpenOption.READ);
        // 建立內存文件映射
        MappedByteBuffer data = readChannel.map(FileChannel.MapMode.READ_ONLY, 0, 1024 * 1024 * 40);
        FileChannel writeChannel = FileChannel.open(Paths.get("b.txt"), StandardOpenOption.WRITE, StandardOpenOption.CREATE);
        // 拷貝數據
        writeChannel.write(data);

        // 關閉通道
        readChannel.close();
        writeChannel.close();
    }catch (Exception e){
        System.out.println(e.getMessage());
    }
}

其中MappedByteBuffer的作用,就是將內核緩沖區的內存和用戶緩沖區的內存做了一個地址映射,讀取小文件,效率并不高;但是讀取大文件,效率很高。

5.2、Java NIO 對 sendfile 的支持

Java NIO 中的FileChannel.transferTo方法,底層調用的就是 Linux 內核的sendfile系統調用方法。Kafka 這個開源項目就用到它,平時面試的時候,如果面試官問起你為什么這么快,就可以提到sendfile零拷貝系統調用方法來回答。

實例代碼如下:

public static void main(String[] args) {
    try {
        // 原始文件
        FileChannel srcChannel = FileChannel.open(Paths.get("a.txt"), StandardOpenOption.READ);
        // 目標文件
        FileChannel destChannel = FileChannel.open(Paths.get("b.txt"), StandardOpenOption.WRITE, StandardOpenOption.CREATE);
        // 拷貝數據
        srcChannel.transferTo(0, srcChannel.size(), destChannel);

        // 關閉通道
        srcChannel.close();
        destChannel.close();
    } catch (Exception e) {
        System.out.println(e.getMessage());
    }
}

Java NIO 提供的FileChannel.transferTo并不保證一定能使用零拷貝。實際上是否能使用零拷貝與操作系統相關,如果操作系統提供sendfile這樣的零拷貝系統調用方法,那么會充分利用sendfile零拷貝的優勢,否則并不能實現零拷貝。

六、小結

本位主要圍繞零拷貝的邏輯,結合網友的知識分享,進行一次知識整理和總結。

從上面的內容總結可以看出,所謂的零拷貝,其目的并不是說不需要拷貝數據,而是通過一些手段省略 CPU 拷貝環節,減少了不必要的拷貝次數,提升數據拷貝效率。

以  Linux 操作系統為例,真正意義上大家比較認可的零拷貝主要有 sendfile、splice 等方法,它們完全通過 DMA 控制器來實現數據的拷貝,無需 CPU 來參與數據拷貝的過程,這個過程被稱為零拷貝。

但是比較糟心的是,一些機構、團隊,在產品推廣中過度包裝零拷貝這個概念,名曰“采用零拷貝,性能有多高等等...”,這樣的宣傳似乎會讓很多人覺得很厲害。

作為一線技術者,應該多多深入了解,識透其真相,弄清楚是偏向于優化數據操作,還是真正切合場景、靈活運用了操作系統意義上的零拷貝,大家可以多深入分析。

責任編輯:武曉燕 來源: Java極客技術
相關推薦

2022-05-16 08:22:37

零拷貝Netty

2021-03-12 13:57:13

零拷貝技術

2023-08-26 21:42:08

零拷貝I/O操作

2023-07-27 08:26:36

零拷貝I/O操作

2025-10-11 02:11:00

Spring零拷貝磁盤

2024-01-09 18:09:43

模型方式DMA

2024-12-26 17:04:47

2022-05-05 13:57:43

Buffer設備MYSQL

2023-07-11 10:33:48

凈零度碳排放

2020-02-28 19:10:40

Linux零拷貝原理

2021-06-08 07:45:44

Go語言優化

2021-08-26 06:57:53

零拷貝技術磁盤

2024-04-29 08:15:07

I/OCPU密集型

2022-09-27 13:34:49

splice零拷貝原理

2020-07-23 15:40:54

Linux零拷貝文件

2020-07-06 15:10:05

Linux拷貝代碼

2024-11-11 10:15:04

CPULinux系統

2023-07-11 00:12:05

2024-12-09 09:00:00

拷貝構造函數傳遞編程

2024-11-28 10:40:26

零拷貝技術系統
點贊
收藏

51CTO技術棧公眾號

好吊色视频在线观看| 婷婷激情四射五月天| 人妻与黑人一区二区三区| 一区二区日本视频| 一区二区三区视频免费在线观看| 亚洲欧美日韩三级| 2001个疯子在线观看| 久久久久久久久99精品| 亚洲最大的网站| 男人日女人网站| 婷婷久久综合| 亚洲韩国日本中文字幕| 男女视频在线看| 免费在线观看av电影| 国产性做久久久久久| 亚洲xxxx做受欧美| 国产亚洲欧美日韩高清| 欧美日韩国产高清| 在线观看免费高清视频97| 一级黄色大片免费看| 欧美日韩精品免费观看视欧美高清免费大片 | 97人妻一区二区精品免费视频| 在线精品观看| 久久五月天综合| 无码人妻精品一区二区中文| 人人爱人人干婷婷丁香亚洲| 欧洲一区在线观看| 免费在线观看视频a| 黄色免费在线看| 国产农村妇女精品| 精品乱码一区二区三区| 精品人妻少妇AV无码专区| 美女一区二区久久| 日韩av日韩在线观看| 妺妺窝人体色www聚色窝仙踪| 狠狠综合久久av一区二区蜜桃| 亚洲精品在线电影| 图片区乱熟图片区亚洲| 全球最大av网站久久| 五月开心婷婷久久| 国产精品久久久久7777| 成人在线视频亚洲| 国产精品理伦片| 日韩精品久久久| 可以在线观看的av| 91在线码无精品| 国产精品一区二区三区在线| 国产aⅴ一区二区三区| 极品美女销魂一区二区三区| 国产精品日日做人人爱| 无码人妻精品一区二区50| 国产精品老牛| 欧美孕妇性xx| 国产99久久久| 久久国产精品毛片| 热99精品里视频精品| 五月婷婷中文字幕| 亚洲综合二区| 欧洲亚洲女同hd| 中文字幕在线播| 首页国产欧美久久| 国产成人精品久久二区二区91| 一级成人黄色片| 噜噜噜91成人网| 国产精品高潮视频| 一级黄色大片网站| 另类小说欧美激情| 成人免费激情视频| 国产a级免费视频| 高清国产一区二区三区| 国产精品久久久久久久久婷婷 | 激情视频小说图片| 在线免费观看的av| 亚洲国产视频一区| www.com毛片| 无人区在线高清完整免费版 一区二| 91国产免费观看| 污污动漫在线观看| 日韩久久一区| 日韩精品中文字幕一区二区三区| 亚洲一区和二区| 日韩精品欧美大片| 丝袜情趣国产精品| 免费无遮挡无码永久在线观看视频 | 亚洲欧美国产一本综合首页| 一道本在线观看| 久久一级电影| 久久久久久美女| 亚洲精品一区二三区| 精彩视频一区二区| 成人精品网站在线观看| 欧美特黄一级视频| 久久精品亚洲乱码伦伦中文| 一区二区三区免费看| 羞羞的视频在线观看| 欧美日韩一区二区三区在线免费观看| 天天干在线影院| 日本一区二区三区播放| 亚洲欧美激情另类校园| 成人免费精品动漫网站| 在线综合亚洲| 亚洲一区二区日本| 欧洲亚洲在线| 一二三四社区欧美黄| 精品国产成人av在线免| 精品麻豆剧传媒av国产九九九| 亚洲国产精品热久久| 日本视频在线免费| 国产欧美成人| 91网站免费看| 你懂的视频在线| 亚洲综合久久av| 欧美午夜aaaaaa免费视频| 国产精品高潮呻吟久久久久| 搡老女人一区二区三区视频tv| 91国产丝袜播放在线| 久久99久久精品| 欧美日韩综合久久| av资源网在线播放| 欧美电影一区二区三区| 免费看污片的网站| 一区二区三区国产盗摄| 91精品免费| 在线看免费av| 色一区在线观看| 国模无码视频一区| 欧美一区网站| 成人黄色免费在线观看| 九色国产在线观看| 天天色综合成人网| 亚洲香蕉中文网| 国产精品videosex极品| 国产精品自拍网| 国产视频精品久久| 欧美日韩中文字幕| 亚洲一区二区三区四区av| 亚洲最大av| 成人黄色短视频在线观看| 95在线视频| 欧美中文字幕一区二区三区亚洲| 久久福利小视频| 国产综合婷婷| 不卡视频一区二区三区| 亚洲奶水xxxx哺乳期| 欧美一区二区视频观看视频| 国产精品综合激情| 另类小说欧美激情| 一区二区三视频| 久久久久黄色| 日韩在线视频网站| 中文字幕在线观看第二页| 国产视频在线观看一区二区三区| 久久久久久久激情| 伊人久久大香线蕉| 国产成人一区二区三区小说 | 久久久91精品| 91国产精品一区| 成人欧美一区二区三区视频网页 | 亚洲欧美国产不卡| 日韩色性视频| 久久亚洲精品一区| 精品欧美一区二区精品少妇| 亚洲综合免费观看高清完整版 | 91精品国产91久久久久久最新 | 羞羞色院91蜜桃| 国产亚洲欧美日韩俺去了| 天天爽人人爽夜夜爽| 色小子综合网| 91亚洲国产成人精品性色| 日本性爱视频在线观看| 亚洲护士老师的毛茸茸最新章节| 黄色一级片免费看| 久久精品欧美日韩| 国产色视频在线播放| 最新国产精品| 国产精品乱子乱xxxx| 波多野结衣久久精品| 国产一区二区三区免费视频| 97久久人国产精品婷婷| 一区二区三区中文免费| 欧美xxxxx精品| 久久精品欧洲| 欧美aaa在线观看| 欧美黄色影院| 国产精品嫩草影院久久久| 成人免费视屏| 日韩大陆毛片av| 中文字幕av久久爽| 一区二区成人在线| 国产精品jizz| 国内久久精品视频| 老太脱裤让老头玩ⅹxxxx| 欧美手机在线| 国产精品欧美久久| 99精品国自产在线| 久久久久久有精品国产| 成年人视频在线看| 亚洲国产精品999| 中文字幕在线一| 婷婷久久综合九色国产成人| 少妇的滋味中文字幕bd| 不卡av电影在线播放| 欧美三级午夜理伦三级富婆| 亚洲精品在线二区| 浴室偷拍美女洗澡456在线| 全国精品免费看| 91热精品视频| 欧美日韩在线精品一区二区三区激情综合 | 欧美激情导航| 91精品入口| 国产精品偷伦免费视频观看的| 欧美四级在线| www.国产精品一二区| 日本五码在线| 亚洲第一色在线| 国产熟女一区二区三区四区| 在线观看视频91| 97人人澡人人爽人人模亚洲| 亚洲日本va午夜在线影院| 精品人妻无码一区二区三区换脸| 成人午夜av电影| 亚洲丝袜在线观看| 精品一区二区三区不卡| 一级特黄性色生活片| 国产精品久久777777毛茸茸| 青草青青在线视频| 国模一区二区三区| 小泽玛利亚av在线| 亚洲天堂一区二区三区四区| 亚洲一区免费看| 日本一区二区在线看| 日本精品免费| 伊人久久大香线蕉综合网蜜芽| 国产精品av一区| 91精品国产自产精品男人的天堂 | 成人精品天堂一区二区三区| 蜜桃91精品入口| 欧美做受69| 精品亚洲欧美日韩| 精品福利网址导航| a级国产乱理论片在线观看99| 国产精品66| 国产日韩精品视频| 成人精品动漫| 国产日韩av在线播放| 免费高清视频在线一区| 欧美亚洲在线观看| 99福利在线| 欧美日韩高清在线观看| gogo在线高清视频| 久久精品成人一区二区三区| 日本三级视频在线观看| 中文字幕亚洲欧美在线| 欧美777四色影视在线| 国产亚洲成av人片在线观看桃| 少妇性bbb搡bbb爽爽爽欧美| 亚洲缚视频在线观看| 日韩黄色影片| 亚洲美女动态图120秒| 天堂91在线| 91超碰这里只有精品国产| 国产裸体永久免费无遮挡| 欧美精品日韩精品| 国产又粗又猛又爽又黄视频| 欧美一级淫片007| av中文字幕免费在线观看| 欧美一级午夜免费电影| 懂色av一区二区三区四区| 欧美成人video| 动漫av一区二区三区| 精品在线观看国产| 黄色大片在线看| 中文字幕无线精品亚洲乱码一区| av网址在线看| 欧美日韩国产成人在线| wwww在线观看免费视频| 免费日韩av片| 免费观看成人高| 九九视频免费观看视频精品| 亚洲欧洲一区二区| 亚洲精品久久久| 精品视频在线观看一区二区| 综合视频在线| 日韩精品 欧美| 日韩一区精品字幕| 欧美人与性动交α欧美精品| 9久草视频在线视频精品| 人妻大战黑人白浆狂泄| 日韩毛片视频在线看| 精品少妇theporn| 天天综合色天天综合色h| 亚洲色成人www永久网站| 欧美人狂配大交3d怪物一区| 亚洲成人黄色片| 亚洲国产91色在线| 69久久夜色| 亚洲激情自拍视频| 中文字幕视频网| 欧美一卡二卡在线观看| 三级理论午夜在线观看| 色噜噜狠狠狠综合曰曰曰88av| 国产夫妻在线| 国产欧美日韩中文字幕在线| 亚洲一区二区三区在线免费| 国产三级精品在线不卡| 欧美丝袜丝交足nylons172| www.男人天堂网| 久久国产毛片| a级大片免费看| 久久久综合九色合综国产精品| 免费看一级一片| 欧美在线影院一区二区| 亚洲精品久久久久久无码色欲四季| 一区二区三欧美| 国产三级伦理在线| 国产人妖伪娘一区91| 精品香蕉视频| 无码粉嫩虎白一线天在线观看| 麻豆成人免费电影| 能免费看av的网站| 悠悠色在线精品| 日韩精选在线观看| 亚洲久久久久久久久久| 成人毛片av在线| 91av成人在线| 99精品在免费线中文字幕网站一区 | 日韩激情av在线播放| 在线中文字幕电影| 国产精品偷伦视频免费观看国产| 盗摄系列偷拍视频精品tp| 曰韩不卡视频| 天堂久久一区二区三区| 捆绑凌虐一区二区三区| 依依成人综合视频| 伊人免费在线观看高清版| 亚洲欧洲在线播放| 神马久久午夜| 国产精品美女xx| 精品不卡视频| 亚洲精品久久久久久| 国产日韩精品一区二区三区 | 亚洲91中文字幕无线码三区| 少妇一级淫免费播放| 久久久久99精品一区| 可以免费看的av毛片| 日韩第一页在线| 成人ssswww在线播放| 亚洲一区二区久久久久久久| 婷婷综合久久| 最新av免费在线观看| 欧美国产欧美综合| 成年人视频免费| 亚洲欧美日本另类| 人人鲁人人莫人人爱精品| 欧美亚洲另类久久综合| 亚洲欧美日本日韩| 免费观看a级片| 欧美亚日韩国产aⅴ精品中极品| 男同在线观看| 国产成人精品免费久久久久| 男男gay无套免费视频欧美| 韩国一区二区av| 国产欧美va欧美不卡在线| 最近中文字幕在线视频| 精品国产欧美一区二区五十路| 国产成人久久精品麻豆二区| 欧美日韩电影一区二区| 首页亚洲欧美制服丝腿| 青青操在线播放| 日韩限制级电影在线观看| 直接在线观看的三级网址| 俄罗斯精品一区二区三区| 国产精品老牛| 国产三级短视频| 91久久精品国产91性色tv| 日本中文字幕在线观看| 3d动漫精品啪啪一区二区三区免费| 激情综合在线| 亚洲永久无码7777kkk| 色综合久久久网| 黄色动漫在线| 国产日韩欧美亚洲一区| 青青草成人在线观看| 国产黄在线免费观看| 欧美tickling网站挠脚心| 中文av在线全新| 亚洲欧美丝袜| 成人动漫视频在线| 手机在线看片1024| 日韩视频免费在线观看| 精品视频高潮| 国产免费视频传媒| 国产精品毛片大码女人| 网站黄在线观看| 国产精品久久久久久久久久久久久| 欧美国产91| 最近中文字幕免费视频| 欧日韩精品视频| 动漫一区二区| 亚洲 日韩 国产第一区|