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

TCP沒那么難吧?一文帶你詳細了解

網絡 網絡管理 數據中心
至于TCP/IP的“三次握手”,能說上來的人就相當少了,如果再問問“為什么是三次握手”,基本就沒人能答上來了。一般的回答都是“這個太難”,或者“畢業太久,這個忘記了”。

如今相當多的程序員都是“互聯網程序員”,按說,應該對互聯網的基礎協議相當清楚??上е辽倬臀业拿嬖嚱涷瀬砜矗S多人這方面缺課太多,簡單說說TCP/IP協議分層就已經難倒了不少人。至于TCP/IP的“三次握手”,能說上來的人就相當少了,如果再問問“為什么是三次握手”,基本就沒人能答上來了。一般的回答都是“這個太難”,或者“畢業太久,這個忘記了”。

如果臨時抱佛腳,把TCP的三次握手背下來應付面試,確實能做到。但是要回答TCP為什么是三次握手,而不是兩次或者四次握手,光靠背就不行了——不信你去網絡上搜搜看,各種回答都有,眾說紛紜,不少提問者一頭霧水。

TCP相關的知識重要嗎?我覺得挺重要的,這些年來無論互聯網怎么變化,TCP協議本身都可以承載,仔細探究會發現它的設計的確夠巧妙,有許多值得借鑒的設計思想。

那么TCP真的很難嗎?為什么許多人背TCP的握手流程痛苦不堪,復述起來困難重重?我覺得,原因在于大家只把它當成“既存事實”, 就像上中學時候背歷史政治那樣對待。但TCP可不是毫無邏輯的胡說,一旦 你搞清了設計思想和邏輯,就會發現理解起來一點也不困難。所以,今天我來做個簡單講解。

首先說說“三次握手”這個譯名,我確實覺得翻譯有誤(翻譯出版過一百多萬字技術資料,我自信還是有把握的)。我以前總記不住“三次握手”的過程,因為總覺得“握了三次手”,“握手”是雙方共同往中間湊的過程,這明顯和建連流程不符合。后來才發現,“三次握手”的說法大概有問題。

“三次握手”的原文是three-way handshake,three-way更合適的翻譯恐怕是“三步”,所以整個名詞的意思是“需要三個步驟才能建立握手的機制”。這么解釋的好處是,“步”給人感覺更形象,就是“單方面邁一步”而已。實際上,RFC 793里說明了,握手過程也可以叫three-message handshake,通過三條消息來建立的握手。

那么,為什么要三步才能建立握手呢?我們可以暫時不理這個問題,想想如果我們自己來設計握手機制,應當怎么辦。

我們都知道,TCP是可靠的通訊協議,其“可靠性”就在于,任何一方要向另一方發數據(SYN),都必須收到確認回應(ACK)。同時TCP也是雙向的通訊協議,所以通訊的兩方都可以主動發送消息。

這里要澄清的一點,對許多“互聯網程序員”來說,TCP是掩蓋在HTTP之下的,大家熟悉的HTTP,它的經典通訊模式是“一問一答”的,沒有請求就沒有應答。不過這只是HTTP的特性,不是TCP的特性。在TCP協議里,客戶端和服務器都可以隨時主動向對方發送數據——也正是因為如此,改用HTTP/2之后服務器可以主動推送信息給客戶端,而不必改動TCP協議。

回到TCP,既然它是雙向、可靠的通訊,可以想見,建立連接就必須確認雙方到對方的通訊都是可靠的,所以大概需要四步,發送四次消息。

如果軟件設計都這么簡單,那就太好了。可惜,世界上沒有那么簡單的事情。仔細觀察這幅圖,我們會發現幾個問題:

***,網絡通訊的成本是很高的,延遲往往無法預測,哪怕能少發送一次消息,也可以大大降低成本,提高效率。所以,建立連接的步驟上限應當是四步,下限是兩步,越少越好。

第二,兩輪SYN/ACK之間必須有關聯,因為它們的功能相對獨立,都是確認到對方的通訊可靠,卻同屬于一個“建立連接”的邏輯操作。如果兩輪完全獨立,那么如果兩輪中間間隔了特別特別長的時間,根本不是一個正常的建立連接的操作,程序卻無法識別,這顯然是不行的。所以,第二輪SYN/ACK必須要能夠和***輪SYN/ACK關聯起來。

再仔細看看,第二步和第三步都是從服務端給客戶端發消息,所以是不是可以合并起來?這樣起碼可以節省了一次網絡通訊。

TCP沒那么難吧?一文帶你詳細了解

像上面這樣直接在第二步把ACK和SYN合并起來,問題就解決了?

按照之前的分析,節省消息發送次數只是考慮之一,還需要考慮的是,第二輪SYN/ACK必須和***輪SYN/ACK掛鉤。

TCP沒那么難吧?一文帶你詳細了解

上面是TCP的數據報,包含了許多的控制位,用來標識連接的狀態。其中最常見的是SYN、ACK、FIN:SYN表示synchronize,在建立連接時使用;ACK表示acknowledge,表示“確認”收到了消息;FIN表示finish,在斷開連接時使用。

還要注意的兩個東西是SEQ NO和ACK NO。SEQ NO即Sequence Number,服務端和客戶端都會維護自己的SEQ NO,表示“已經發送了多少數據”,單位是字節;ACK NO即Acknowledge Number,用來回復確認,對應SEQ NO的數據已經收到。單獨說起來,這些概念都容易理解,只是注意不要混淆控制位的ACK和ACK NO——ACK是布爾值用來標識數據報的類型,ACK NO是數值用來確認已經收到的數據。

基于上面的知識我們可以知道,在建立連接之初,數據報中的控制位SYN應當設定為1,表示“新建連接”;同時應當包含SEQ NO。此時的SEQ NO有個專門的名字叫ISN,也就是Initial Sequence Number(要注意,ISN只是用來稱呼這個特殊SEQ NO,并不存在專門的ISN字段)。

在服務端收到***個SYN消息的時候,它當然需要發送ACK響應,但它如何確認其中的SEQ NO“就是”新建連接的ISN,而不是來自姍姍來遲的某個古老連接呢?所以必須向客戶端確認。恰恰因為第二步是ACK,SYN“合二為一”的獨特響應,所以收到這個消息時,客戶端就知道,既需要響應其中的SYN,也需要核實其中的ACK(如果你仔細讀過RFC793就會知道,其中專門有一段提到了: A three way handshake is necessary because…… )

到了第三步,客戶端返回的消息里既包含對應SYN的ACK,表示收到了服務端的消息,同時設定SEQ NO=ISN+1,確認核實了ISN。服務端收到這條消息,確認無誤是要建立新連接。至此,連接建立完畢。

TCP沒那么難吧?一文帶你詳細了解

大流程看起來就是這樣,也不難理解。不過仔細想想,還是有不少問題得考慮的。比如狀態問題,既然TCP是網絡通訊,會發生延遲,那么在“信息已經發送,但還沒有收到確認”的時候,應當是有個明確狀態的,否則會發生狀態的錯亂。實際上TCP也確實做到了這點,它背后有一臺完整的狀態機,確保每時每刻,每個動作發生之后,狀態都完全可控,一切盡在掌握,不會出現任何“孤點”和“斷頭路”。

TCP沒那么難吧?一文帶你詳細了解

上圖是TCP的狀態轉移圖的局部,覆蓋了建立鏈接的狀態,感興趣的讀者可以按照自己實地走走看(說個題外話,“自己模擬在圖上走走”看起來土,其實高科技領域也挺常用。設計波音737的時候,開始大家都不知道發動機怎么擺比較好,設計師喬·薩特就在紙上畫出機身和發動機的模型,把發動機模型剪下來在飛機各處擺放,最終發現吊在翼下最合適)。

我在之前關于軟件設計的文章里幾次提到狀態圖、狀態轉移函數,無論是用戶生命周期、訂單流轉過程,都可以用這個工具來解決。遺憾的是,我發現還有許多設計人員不懂得或者不習慣用使用它,實在很可惜。

回到TCP建立連接的過程,我們還要注意ISN。在建立連接時必須先確定ISN,通過它把客戶端和服務器的計數對齊。通常的教材上說,ISN是隨機生成的,這樣就保證了唯一性。 隨機的目的是保持唯一,但千萬不要以為“隨機就不會重復”,簡單的“取隨機數”是很容易碰撞的。所以傳統的“隨機”方案是維護一個時鐘和一個32位的計數器,時鐘每過4毫秒,計數器自增1。因為2^32毫秒就是差不多4個半小時(MSL,Max Segment Lifetime),這基本超出了任何數據包在網絡中的可能傳輸時間,所以可以認為這種ISN是***的。

但這種方案也有風險,既然這樣的ISN是連續的,那么中途的惡意程序可能能夠預測ISN的生成規律,從而偽造ISN…… 總之ISN的生成是個有趣的設計問題,這里不展開了,有興趣可以自己搜索資料閱讀。

我在開發中遇到不少程序員,一旦需要避免重復,就想到“生成隨機數”,根本不管隨機數也可能碰撞。更有甚者,一旦遇到類似ISN的場合,就想當然把初始值設定為0,真是讓人欲哭無淚(有沒有想過ISN為什么不能設定為0呢,歡迎留言討論)。

說完了建立連接的握手,我們再來看終止連接的揮手。通常大家都知道,TCP是“三次握手,四次揮手”(雖然我很不贊成“次”,但既然它已經約定俗成,這里還是延用通用的說法吧)。那么,為什么要四次才能揮手呢?

知道這個答案的人比能講清楚“三次握手”的要多。通常的答案都是:TCP是雙向通訊協議,要結束連接,雙方都必須發送終止信號,告訴對方后續再沒有數據發過來了,并等待對方確認,所以一共需要2+2=4次。

TCP沒那么難吧?一文帶你詳細了解

如果你之前看過建立連接的過程,大概會有這樣的疑問:既然建立連接的時候可以節省一步,把服務端返回SYN和ACK合并到一起,那么結束連接的時候,是否也可以把服務端返回的SYN和FIN合并起來,節省一步呢?

想到了這個問題就值得恭喜,因為你不是只滿足于“知其然”,而希望“知其所以然”。不過我們也需要想到,既然TCP連接的建立和終止都是同一批人定義的,既然他們能想到在建立連接時節省一步,那么他們沒有理由在終止連接時不做節省。之所以沒有“節省”,一定是有理由存在的。

沒錯,確實是有理由的,而且這個理由很好理解,因為建立和終止連接的場景是不一樣的。在建立連接之前,客戶端和服務器端都不會向對方發送任何數據,所以在服務端返回ACK的時候帶上SYN,客戶端當然知道這是從服務端收到的***個數據包。

而在結束連接時,客戶端向服務端發送FIN,表示“我這邊不會繼續發送數據過來了”,服務端響應ACK,這都沒有問題。但此時,服務端之前向客戶端發送數據的操作可能還沒有完成,服務端仍然在向客戶端傳輸數據。如果服務端把FIN和ACK合并起來,就會出現這樣的情況:客戶端的數據還沒有接受完,忽然收到服務端的消息“后續沒有數據了,終止連接”。顯然,這種情況不應當出現,所以不能把ACK和FIN合并在一起,所以終止連接必須要四步。

最近和實習生聊天,說起開發中遇到的各種問題,以及對應的模型,大家聽得入迷。事后有人問我:為什么我們工作中遇不到這么有意思的問題呢?我知道,這是個比較典型的問題。其實答案也很典型:因為你沒有去深究問題背后的原型。懂得了背后的原型,就具備了“從已知推導無知”的本領,也具備了“從無知中發現已知”的眼光。

我和朋友聊開發有個共同的判斷:TCP的握手和揮手看起來簡單,但真讓如今的開發人員去設計握手和揮手流程,估計有超過一半的人設計不出穩定、可靠、高效的握手和揮手流程。這樣說來,許多業務系統里業務層面的通訊極不可靠,協議設計錯漏百出,也是無奈的結果了。

補充一句。我曾在面試中遇到過這樣的人,非名校畢業,已經有五年工作經驗,除了對流行的框架和熱點問題對答如流,對數據庫理論、網絡基礎知識、數據結構和算法依然如數家珍。事實充分證明,不是所有人工作之后就把大學的知識丟個精光的,事實也證明,這樣的候選人確實能擔大任。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2018-08-30 17:28:52

TCP三次握手HTTP

2023-11-20 08:18:49

Netty服務器

2023-11-06 08:16:19

APM系統運維

2022-11-11 19:09:13

架構

2023-10-27 08:15:45

2023-11-08 08:15:48

服務監控Zipkin

2022-02-24 07:34:10

SSL協議加密

2020-02-02 15:14:24

HTTP黑科技前端

2022-04-28 09:22:46

Vue灰度發布代碼

2020-10-08 14:32:57

大數據工具技術

2025-09-12 16:31:04

TiDBMCP ServerAI工具

2025-01-15 09:06:57

servlet服務器Java

2022-09-29 13:09:38

DataClassPython代碼

2019-07-09 08:29:51

TCPIP協議

2018-10-22 08:14:04

2022-02-18 10:13:07

SolrElasticSea開源

2022-09-06 11:21:49

光網絡光纖

2019-07-04 15:16:52

數據挖掘大數據算法

2023-03-31 08:16:53

Flutter優化內存管理

2023-12-06 16:28:56

點贊
收藏

51CTO技術棧公眾號

黄色录像免费观看| 亚洲成人久久影院| 萌白酱国产一区二区| 中文字幕视频三区| 丁香花在线电影| 国产区在线观看成人精品| 国产日韩中文在线| 日韩精品一卡二卡| 日韩av专区| 精品粉嫩超白一线天av| 黄色aaa级片| 手机av免费在线| 亚洲国产精品精华液ab| 97久久夜色精品国产九色 | 欧美日日夜夜| 欧美片在线播放| 99热自拍偷拍| 最新日本在线观看| 欧美成人免费| 久久国产毛片| 欧美成年人视频| 日韩乱码人妻无码中文字幕久久| jizz欧美| 色一情一伦一子一伦一区| 亚洲国产日日夜夜| 成人三级在线| 国产尤物视频在线观看| 西西裸体人体做爰大胆久久久| 久久精品国产96久久久香蕉| 实拍女处破www免费看| 午夜日韩影院| 3d动漫精品啪啪1区2区免费| 一级黄色香蕉视频| 亚洲欧美se| 精品久久久久久中文字幕大豆网 | 激情影院在线| 国产精品一级片在线观看| 日本国产高清不卡| 五月天丁香综合久久国产 | yw在线观看| 成人av网址在线观看| 亚洲va久久久噜噜噜久久天堂| 伊人成年综合网| 销魂美女一区二区三区视频在线| 久久男人av资源网站| 亚洲精品一二区| 国产制服91一区二区三区制服| 国产高清视频免费在线观看| 欧美日韩国产中文字幕在线| 韩国欧美一区二区| 国产日本欧美一区二区三区| a片在线免费观看| 青青草原国产在线| 媚黑女一区二区| 欧美在线视频在线播放完整版免费观看 | 天堂中文在线网| 日本在线观看| 亚洲精品欧洲| 91sao在线观看国产| 精品一区免费观看| av成人激情| 欧美综合在线第二页| 黄色a级在线观看| 男人天堂中文字幕| 亚洲私拍自拍| 91精品国产高清久久久久久久久 | 国产欧美二区| 日韩av手机在线| 日韩欧美国产另类| 另类欧美日韩国产在线| 国产日韩在线视频| 亚洲av无码国产综合专区| 成人午夜av影视| 久久亚洲高清| 成年人视频免费在线观看| 国产精品私人自拍| 日韩中文在线字幕| 超碰在线97国产| 色婷婷精品大视频在线蜜桃视频| 欧美性xxxxx| 久久九九视频| 国产精品中文久久久久久久| 艳妇乳肉豪妇荡乳av无码福利 | 国产精品美女久久久久av福利| 国产丰满果冻videossex| 成人性生交大片免费看中文| 久久久久久久久久久一区| 永久免费看av| 91视频在线观看| 一区二区三区蜜桃| 欧美v在线观看| 国产精品蜜月aⅴ在线| 欧美一二三在线| 青青草视频播放| 国产精品久久久久久| 性欧美xxxx交| 136福利视频导航| 成人sese在线| 亚洲免费视频一区| av老司机免费在线| 欧美色电影在线| 国产精品久久久久久亚洲av| 欧美精选一区二区三区| 欧美激情精品久久久久久黑人| 亚洲天堂一区在线观看| 激情五月婷婷综合| 久久精品第九区免费观看| 午夜免费福利在线观看| 夜夜精品浪潮av一区二区三区| 精品www久久久久奶水| 国产亚洲精彩久久| 视频一区二区三区在线| 在线国产精品播放| 欧美日韩成人免费观看| 久久国产主播| 91成人免费观看| www.亚洲资源| 午夜精彩视频在线观看不卡| 亚洲精品综合在线观看| 偷拍亚洲精品| 欧美猛少妇色xxxxx| 进去里视频在线观看| 99re成人精品视频| 成人免费看片视频在线观看| 在线成人视屏| 亚洲精品成人久久久| 内射毛片内射国产夫妻| 午夜亚洲福利在线老司机| 91九色露脸| 日本在线免费看| 91黄色免费网站| 国产精品伦子伦| 国产精品九九| 亚洲最大成人在线| 欧美极品另类| 欧美日韩视频不卡| 女女互磨互喷水高潮les呻吟| 99re国产精品| 精品国产乱码久久久久久蜜柚| 在线观看wwwxxxx| 在线电影院国产精品| 999精品久久久| 日韩精品一二三| 日本一区二区不卡高清更新| 国产精品迅雷| 亚洲精品自拍偷拍| 影音先锋在线国产| 久久亚洲影视婷婷| 国产淫片av片久久久久久| 日韩福利视频一区| 欧美一级淫片aaaaaaa视频| 亚洲人成色777777精品音频| 狠狠色狠狠色综合日日小说| 国产熟女高潮一区二区三区| 99热在线精品观看| 久草精品电影| 亚洲va中文在线播放免费| 亚洲香蕉成视频在线观看| 狠狠色2019综合网| 欧美久久精品午夜青青大伊人| 一本到在线视频| 欧美韩国日本综合| 亚洲欧美国产日韩综合| 色97色成人| 亚洲xxxx在线| 丰满的护士2在线观看高清| 亚洲国产精品va在线| 国产性xxxx高清| 久久久久国产精品麻豆| 91激情视频在线| 天天影视综合| 久久99精品国产麻豆婷婷| 欧美综合在线观看| www.久久热.com| 4hu四虎永久在线影院成人| 人妻少妇精品一区二区三区| 成人国产视频在线观看| 亚洲国产精品久久久久爰色欲| 欧美精品一区二区三区中文字幕| 国产有码一区二区| 黑人玩欧美人三根一起进| 日韩黄色在线免费观看| 在线观看亚洲黄色| 亚洲精品国产高清久久伦理二区| 日本五十肥熟交尾| 日本午夜精品视频在线观看 | 精品无人区麻豆乱码久久久| 国产欧美一区二区三区久久| 色黄网站在线观看| 亚洲男人的天堂在线播放| 亚洲中文一区二区三区| 亚洲一区二区三区视频在线| 国产av自拍一区| 国产综合色精品一区二区三区| 免费观看国产精品视频| 成人高清电影网站| 国产精品白丝jk白祙| 91精品国产66| 国语自产偷拍精品视频偷| 在线免费观看黄| 亚洲国产精品一区二区久| 91av久久久| 欧美日韩美女在线| 国产av 一区二区三区| 久久综合色婷婷| 成人在线短视频| 视频一区欧美日韩| 日本欧美视频在线观看| 91综合视频| 欧美午夜免费| 黄色欧美网站| 亚洲精品日韩激情在线电影| 欧美成人免费电影| 欧美精品久久久久久久| 亚洲国产欧美不卡在线观看| 另类中文字幕国产精品| 欧美极品少妇xxxxⅹ免费视频| 国产三级电影在线观看| 精品捆绑美女sm三区 | 奇米影视7777精品一区二区| 国产freexxxx性播放麻豆| 日韩视频在线观看| 欧美精品亚洲精品| 精品福利一区| 国产成人看片| 国产精品久久久久久av公交车| 国产成人亚洲精品| 成人免费图片免费观看| 欧美精品在线看| 国产福利在线播放麻豆| 视频在线观看99| 国产精品无码2021在线观看| 日韩av在线看| 人妻与黑人一区二区三区| 日韩一级免费观看| 99久久久无码国产精品免费| 欧美美女喷水视频| 在线免费观看高清视频| 欧美在线不卡一区| 姑娘第5集在线观看免费好剧| 91精品办公室少妇高潮对白| 六月丁香激情综合| 欧美视频在线视频| 天天综合天天干| 岛国av一区二区三区| 亚洲另类欧美日韩| 日韩欧美精品免费在线| 99久热在线精品996热是什么| 狠狠操狠狠色综合网| 精品人妻一区二区三区免费看 | jizzjizzxxxx| 视频在线观看一区| 一区二区在线播放视频| 青青国产91久久久久久| 奇米影视四色在线| 国产伦精品一区二区三区免费迷 | 日本精品一区二区在线观看| 精品国产一区二区三区四区四| 亚洲AV无码一区二区三区性| 欧美精品一区二区三区蜜臀| 色婷婷av一区二区三区之e本道| 亚洲精品不卡在线| 国产尤物视频在线| 日韩在线观看高清| 肉肉视频在线观看| 66m—66摸成人免费视频| 韩国美女久久| 国产欧美精品一区二区| 久久九九精品视频| 精品蜜桃一区二区三区| 欧美人与拘性视交免费看| 天堂av一区二区| 欧美在线国产| 黄色免费视频大全| 蜜臀va亚洲va欧美va天堂| 992kp免费看片| 成人免费毛片片v| 久久精品无码一区| 亚洲人成小说网站色在线 | 午夜视频在线免费观看| 久久99久久99精品免观看粉嫩| 黑森林国产精品av| 国产精品爽爽爽爽爽爽在线观看| 国产一区二区三区精品在线观看| 国产精品久久九九| 俺要去色综合狠狠| 欧美久久久久久久久久久久久久| 久久久久国产精品一区二区| 欧美特黄aaa| 94色蜜桃网一区二区三区| 色撸撸在线视频| 亚洲成人精品影院| 一本久道久久综合无码中文| 亚洲精品在线三区| 1024国产在线| 国产69久久精品成人看| www欧美在线观看| 国产一区在线免费观看| 国产国产精品| 国产中文字幕免费观看| 国产在线观看一区二区| 精品夜夜澡人妻无码av| 亚洲美女偷拍久久| 久久久久久av无码免费看大片| 精品国免费一区二区三区| 自拍视频在线| 97超级碰碰碰久久久| 久久久久久久久久久久电影| 日韩精品久久久免费观看 | 久久国产精品国产精品| 99精品视频在线播放观看| 国产又粗又硬又长又爽| 色猫猫国产区一区二在线视频| 亚洲av无码一区二区三区dv| 日韩在线播放av| www.26天天久久天堂| 蜜桃传媒视频麻豆第一区免费观看 | www国产成人| 成人羞羞视频播放网站| 欧美成人手机在线| 成人开心激情| 国产精品一区二区三区观看| 久久国产电影| 无遮挡又爽又刺激的视频| 成人手机电影网| 91在线播放观看| 欧美日本免费一区二区三区| 三级国产在线观看| 久久久久久久97| 久久久久久亚洲精品美女| 视频一区不卡| 视频一区国产视频| 日韩精品无码一区二区三区久久久| 婷婷综合在线观看| 色呦呦中文字幕| 亚洲尤物在线| 秋霞毛片久久久久久久久| 伊人蜜桃色噜噜激情综合| 日本黄色www| 亚洲欧美色图小说| 国产一区二区在线视频聊天| 中文字幕欧美日韩va免费视频| 国模套图日韩精品一区二区| 久久综合一区二区三区| 国产欧美日韩一级| 国产ts丝袜人妖系列视频| 欧美日韩国产在线看| 亚洲欧美综合一区二区| 欧美在线视频播放| 免费黄色成人| 日日鲁鲁鲁夜夜爽爽狠狠视频97| www.在线欧美| 亚洲第一在线播放| 亚洲视频一区二区| 色豆豆成人网| 亚洲综合五月天| 国产综合色精品一区二区三区| 国产一区二区播放| 日韩欧美国产三级| av剧情在线观看| 精品视频第一区| 久久久天天操| 亚洲女人毛茸茸高潮| 在线播放91灌醉迷j高跟美女| 黄色片网站在线| 国产精品v欧美精品∨日韩| 国产日韩一区二区三区在线| 一级片视频免费看| 欧美日本在线一区| 色呦呦在线免费观看| 狠狠干一区二区| 日本伊人色综合网| 亚洲天堂黄色片| 亚洲国产天堂久久综合| 欧美福利在线播放| 黑人巨大国产9丨视频| 菠萝蜜视频在线观看一区| 国产亚洲欧美在线精品| 日日噜噜噜夜夜爽亚洲精品| 一区二区三区自拍视频| 97成人在线观看视频| 中文字幕一区免费在线观看| 六月婷婷中文字幕| 国产精品久久久久aaaa九色| 亚洲一区色图| 欧美狂猛xxxxx乱大交3| 91精品国产黑色紧身裤美女| 毛片在线网站| 在线观看视频黄色| 99久久婷婷国产综合精品| 亚洲视频中文字幕在线观看| 久久久亚洲国产| 日韩欧美不卡| 污片免费在线观看| 欧美精品欧美精品系列| 久久影院午夜精品| 懂色av一区二区三区四区五区| 97久久精品人人澡人人爽| 国产精品无码专区av免费播放| 国产91精品黑色丝袜高跟鞋|