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

三次握手和四次揮手說完了,還讓我手動寫個HTTP協(xié)議代碼

網絡 網絡管理
最近阿粉的同事們在準備面試,其中也有收到offer的幾個不錯的人,畢竟疫情穩(wěn)定了,而阿粉在電話面試的時候,被問到關于HTTP協(xié)議的內容的時候,卻顯得有點麻木了,為什么呢?因為套路太深了,讓阿粉猝不及防呀。

最近阿粉的同事們在準備面試,其中也有收到offer的幾個不錯的人,畢竟疫情穩(wěn)定了,而阿粉在電話面試的時候,被問到關于HTTP協(xié)議的內容的時候,卻顯得有點麻木了,為什么呢?因為套路太深了,讓阿粉猝不及防呀。

[[335962]]

面試官:你了解TCP/IP協(xié)議么?說實話在阿粉聽到這個問題的時候,阿粉的第一想法就是,我回答了這個問題,接下來肯定還有一個三次握手和四次揮手等著我,但是還是得回答呀,于是阿粉就開始作答了。

阿粉開始作答:TCP/IP協(xié)議雖然會放在一起說,但是他們其實呢是屬于兩個不同的協(xié)議。

  • IP協(xié)議:IP協(xié)議實際上是用來查找地址的,而它對應的層級也是網絡層,也可以稱之為網際互聯(lián)層,區(qū)別不大,叫法不同而已。
  • TCP協(xié)議:TCP協(xié)議是用來規(guī)范傳輸規(guī)則的,和IP協(xié)議是不同的,而它對應的層級是傳輸層,而這樣的話,也就是IP去尋找地址,把所有的傳輸任務都交給TCP,而TCP這時候就相當于一個快遞員的身份出現(xiàn)并且存在。

面試官:那你說說什么是三次握手,什么是四次揮手吧

1. 三次握手

大家看這個圖,圖是來自于百度搜索,而且百度上有各種各樣的圖,當你看到圖的時候第一時間肯定是看不懂的,也就是只能通過這個畫的標志的“線”來進行分析,其實這僅僅只是一個方面。

那么我們就來根據圖來解析一下這個圖中都代表了什么意思,圖中存在著兩個序號和三個不同的標志位其中有大小寫容易混淆的呦。

序號:

  • seq:sequence number 的縮寫,直譯的話,序號,對沒錯,它就是序號,你沒有翻譯錯,相信自己,而這個seq表示的則是自己傳遞的序號,TCP在傳輸?shù)臅r候,其中的每一個字節(jié),都會有一個序號,發(fā)送數(shù)據的時候,會把第一個數(shù)據的第一個序號發(fā)送給對方,就是我們所看到的第一步,而接收的這一方面,會按照這個序號來檢查是否是一個連接完整的數(shù)據,如果說你數(shù)據是完整的,那么好,我們可以繼續(xù)下一步,如果你不是完整的,那就重新傳送唄,而這樣的話也能保證數(shù)據的完整性不被破壞。
  • ack:注意,這是小寫的ack,也就是acknoledgement number的縮寫,而他表示的是確認號,這個要和ACK(確認位)進行區(qū)分,接收端這時候用它來給發(fā)送端返回成功接收消息的數(shù)據信息,而這時候,它的值就是表明,我現(xiàn)在想接收下一個數(shù)據包了,而這個值就是下一個數(shù)據包的開始的序號,而這個ack所代表的的值的序號前面的數(shù)據都已經接收成功了。
  • ACK:確認位,確認位來了,只有當ACK=1的時候ack才會起到自己應該起的作用,而在我們第一次發(fā)起請求的時候,因為沒有需要我們確認的接收的數(shù)據,所以這個時候的ACK就是0,而正常通信的情況下,ACK就1.
  • SYN:同步位,而同步位的作用就是用于建立連接時同步序號,而剛連接的時候,說ACK是0,那么ack就不起作用,這時候SYN就來說,你看沒我你們不行了把,要你們有何用,當接收端接收到SYN=1的報文的時候,就會將ack設置為接收到的seq+1的值,這也是大家在看百度上提供的內容的時候看到的,各種seq=k,ACK=k+1,這玩意就是這么來的,這時候ack的值就是根據SYN來直接設置的,這樣你才能正常的進行傳輸,而SYN有時候會被面試官問到為什么在前兩次握手的時候都是1呢?其實這是因為傳輸數(shù)據的雙方的ack都是要一個初始值的,不然你還怎么傳輸,還怎么玩。
  • FIN:終止位,這個在本圖中,并沒有完全的體現(xiàn),在四次揮手的時候就能完全的體現(xiàn)出來了。而它則是用來在數(shù)據傳輸都完成之后來釋放連接的。

那么關于這個圖,我們怎么給面試官說呢?

(1) 第一次握手(SYN=1, seq=x):

客戶端發(fā)送一個 TCP 的 SYN 標志位置1的包,指明客戶端打算連接的服務器的端口,以及初始序號 X,保存在包頭的序列號(Sequence Number)字段里。

發(fā)送完畢后,客戶端進入 SYN_SEND 狀態(tài)。

(2) 第二次握手(SYN=1, ACK=1, seq=y, ACKnum=x+1):

服務器發(fā)回確認包(ACK)應答。即 SYN 標志位和 ACK 標志位均為1。服務器端選擇自己 ISN 序列號,放到 Seq 域里,同時將確認序號(Acknowledgement Number)設置為客戶的 ISN 加1,即X+1。發(fā)送完畢后,服務器端進入 SYN_RCVD 狀態(tài)。

(3) 第三次握手(ACK=1,ACKnum=y+1)

客戶端再次發(fā)送確認包(ACK),SYN 標志位為0,ACK 標志位為1,并且把服務器發(fā)來 ACK 的序號字段+1,放在確定字段中發(fā)送給對方,并且在數(shù)據段放寫ISN的+1

發(fā)送完畢后,客戶端進入 ESTABLISHED 狀態(tài),當服務器端接收到這個包時,也進入 ESTABLISHED 狀態(tài),TCP 握手結束。

你如果這么說,面試官有可能還會問,你這也太官方了,能不能說說你的理解,那么你可以用一個實際上的例子來給他說一下,

阿粉:雞丁,嘿,我是阿粉,你聽的到我說話么?

雞丁:吵吵啥,聽到了,除了你我還能認識誰。

阿粉:你聽的到你還不趕緊回復,怪不得你沒有女朋友呢。那我們再繼續(xù)交流一下吧。

而這三次的對話過程就是通俗的三次握手,期間對話三次,以此來確定兩個方向上的數(shù)據傳輸通道是否正常。

2. 四次揮手

那么四次揮手怎么來回答呢?

(1)第一次揮手(FIN=1,seq=x)

假設客戶端想要關閉連接,客戶端發(fā)送一個 FIN 標志位置為1的包,表示自己已經沒有數(shù)據可以發(fā)送了,但是仍然可以接受數(shù)據。

發(fā)送完畢后,客戶端進入 FIN_WAIT_1 狀態(tài)。

(2) 第二次揮手(ACK=1,ACKnum=x+1)

服務器端確認客戶端的 FIN 包,發(fā)送一個確認包,表明自己接受到了客戶端關閉連接的請求,但還沒有準備好關閉連接。

發(fā)送完畢后,服務器端進入 CLOSE_WAIT 狀態(tài),客戶端接收到這個確認包之后,進入 FIN_WAIT_2 狀態(tài),等待服務器端關閉連接。

(3) 第三次揮手(FIN=1,seq=y)

服務器端準備好關閉連接時,向客戶端發(fā)送結束連接請求,F(xiàn)IN 置為1。

發(fā)送完畢后,服務器端進入 LAST_ACK 狀態(tài),等待來自客戶端的最后一個ACK。

(4) 第四次揮手(ACK=1,ACKnum=y+1)

客戶端接收到來自服務器端的關閉請求,發(fā)送一個確認包,并進入 TIME_WAIT狀態(tài),等待可能出現(xiàn)的要求重傳的 ACK 包。

服務器端接收到這個確認包之后,關閉連接,進入 CLOSED 狀態(tài)。

客戶端等待了某個固定時間(兩個最大段生命周期,2MSL,2 Maximum Segment Lifetime)之后,沒有收到服務器端的 ACK ,認為服務器端已經正常關閉連接,于是自己也關閉連接,進入 CLOSED 狀態(tài)。兩次后會重傳直到超時。如果多了會有大量半鏈接阻塞隊列。

那么怎么去通俗的給面試官說呢?

阿粉:雞丁呀,我要說的都說完了,你還有啥事么?

雞丁:你說的我都明白了,但是別斷,我還有要囑咐你的,給我找女朋友的事情。

雞丁:xxxxx,我說完了。

阿粉,行啦,別BB了,記住了,掛了把。

如果面試官問你的時候,你這么回答的話,既有官方的解釋,還有本身自己的理解,那么這個問題就已經算是差不多了,

而面試官顯然不可能會這么放過你,肯定再給你來個雷,為啥是三次握手,而是四次揮手呢?為啥不是三次呢?

這是因為服務端在LISTEN狀態(tài)下,收到建立連接請求的SYN報文后,把ACK和SYN放在一個報文里發(fā)送給客戶端。而關閉連接時,當收到對方的FIN報文時,僅僅表示對方不再發(fā)送數(shù)據了但是還能接收數(shù)據,己方是否現(xiàn)在關閉發(fā)送數(shù)據通道,需要上層應用來決定,因此,己方ACK和FIN一般都會分開發(fā)送。所以這時候揮手的時候就是四次,而不再是三次了。

那么我們怎么去手寫一個HTTP協(xié)議呢?代碼送上:

  1. public class Server { 
  2.     public static void main(String[] args) throws Exception{ 
  3.         ServerSocketChannel ssc = ServerSocketChannel.open(); 
  4.         ssc.socket().bind(new InetSocketAddress(8080)); 
  5.         ssc.configureBlocking(false); 
  6.         Selector selector = Selector.open(); 
  7.         ssc.register(selector, SelectionKey.OP_ACCEPT); 
  8.         while (true){ 
  9.             if (selector.select(3000)==0){ 
  10.                 continue; 
  11.             } 
  12.             Iterator<SelectionKey> keyIterator = selector.selectedKeys().iterator(); 
  13.             while (keyIterator.hasNext()){ 
  14.                 SelectionKey key = keyIterator.next(); 
  15.                 new Thread(new HttpHandler(key)).run(); 
  16.                 keyIterator.remove(); 
  17.             } 
  18.         } 
  19.     } 
  20.     private static class HttpHandler implements Runnable{ 
  21.  
  22.         private int bufferSize = 1024
  23.         private String localCharset = "UTF-8"
  24.         private SelectionKey key; 
  25.         public HttpHandler(SelectionKey key){ 
  26.             this.key=key; 
  27.         } 
  28.  
  29.         public void handleAccept()throws IOException{ 
  30.             SocketChannel clientChannel = ((ServerSocketChannel)key.channel()).accept(); 
  31.             clientChannel.configureBlocking(false); 
  32.             clientChannel.register(key.selector(),SelectionKey.OP_READ, ByteBuffer.allocate(bufferSize)); 
  33.         } 
  34.  
  35.         @Override 
  36.         public void run() { 
  37.             try { 
  38.                 if (key.isAcceptable()){ 
  39.                     handleAccept(); 
  40.                 } 
  41.                 if (key.isReadable()){ 
  42.                     handleRead(); 
  43.                 } 
  44.             }catch (IOException e){ 
  45.                e.printStackTrace(); 
  46.             } 
  47.         } 
  48.  
  49.         public void handleRead() throws IOException{ 
  50.             SocketChannel sc = (SocketChannel) key.channel(); 
  51.             ByteBuffer buffer = (ByteBuffer) key.attachment(); 
  52.             buffer.clear(); 
  53.             if (sc.read(buffer)==-1){ 
  54.                 sc.close(); 
  55.             }else { 
  56.                 buffer.flip(); 
  57.                 String receiveString = Charset.forName(localCharset).newDecoder().decode(buffer).toString(); 
  58.                 String[] requestMessage = receiveString.split("\r\n"); 
  59.                 for (String s:requestMessage) { 
  60.                     System.out.println(s); 
  61.                     if (s.isEmpty()){ 
  62.                         break; 
  63.                     } 
  64.                     String[] firstLine = requestMessage[0].split(" "); 
  65.                     System.out.println(); 
  66.                     System.out.println("Method:\t"+firstLine[0]); 
  67.                     System.out.println("url:\t"+firstLine[1]); 
  68.                     System.out.println("HTTP Version:\t"+firstLine[2]); 
  69.                     System.out.println(); 
  70.  
  71.                     StringBuffer sendString = new StringBuffer(); 
  72.                     sendString.append("HTTP/1.1 200 OK\r\n"); 
  73.                     sendString.append("Content-Type:text/html;charset="+localCharset+"\r\n"); 
  74.                     sendString.append("\r\n"); 
  75.                     sendString.append("<html><head><title>顯示報文</title></head><body>"); 
  76.                     sendString.append("接受到的請求報文是:<br/>"); 
  77.                     for (String s1:requestMessage) { 
  78.                         sendString.append(s1+"<br/>"); 
  79.                     } 
  80.                     sendString.append("</body></html>"); 
  81.                     buffer = ByteBuffer.wrap(sendString.toString().getBytes(localCharset)); 
  82.                     sc.write(buffer); 
  83.                     sc.close(); 
  84.                 } 
  85.             } 
  86.  
  87.         } 
  88.  
  89.     } 

這是一個簡單的實現(xiàn),只是實現(xiàn)思路,并不是真正的處理請求,而大家也要注意設置Content-Type的類型,不然容易出問題的,畢竟長度是有限制的。

 

 

責任編輯:趙寧寧 來源: Java極客技術
相關推薦

2017-09-25 21:27:07

TCP協(xié)議數(shù)據鏈

2015-10-13 09:42:52

TCP網絡協(xié)議

2023-10-24 15:22:09

TCPUDP

2021-01-29 06:11:08

TCP通信三次握手

2021-05-18 12:27:40

TCP控制協(xié)議

2019-06-12 11:26:37

TCP三次握手四次揮手

2024-01-12 08:23:11

TCPACK服務器

2023-11-01 08:04:08

WiresharkTCP協(xié)議

2015-11-09 09:58:56

2021-07-03 17:47:25

TCP控制協(xié)議

2019-02-01 09:38:16

2021-05-28 09:08:20

TCP連接序列號

2020-06-29 14:50:47

TCP狀態(tài)ACK

2023-10-28 09:07:57

TCP面試三次握手

2020-02-17 10:10:43

TCP三次握手四次揮手

2020-01-09 09:31:05

三次握手四次揮手 TCP

2023-03-07 08:38:23

三次握手四次揮手服務端

2019-01-25 09:21:30

2025-05-20 08:38:03

2022-11-17 10:20:49

TCP三次握手四次揮手
點贊
收藏

51CTO技術棧公眾號

亚洲色图.com| 开心九九激情九九欧美日韩精美视频电影 | 中文字幕日韩综合av| www.日本在线播放| 久久精品色图| 久久成人久久鬼色| 国内精品久久久久伊人av| av网站免费在线播放| 欧美性理论片在线观看片免费| 亚洲欧美中日韩| 成人动漫视频在线观看免费| 国产午夜性春猛交ⅹxxx| 清纯唯美日韩| 亚洲缚视频在线观看| 午夜在线观看av| 日韩123区| 久久精品人人做| 99电影在线观看| 国产免费一区二区三区四区五区| 天天做天天爱综合| 亚洲开心激情网| 欧美日韩理论片| 在线免费日韩片| 一区二区三区四区av| 天堂一区二区三区 | av高清不卡| 亚洲激情六月丁香| 亚洲精品无人区| 亚洲色欧美另类| 国产一区二区电影| 国产精品成人av性教育| 伊人365影院| 91精品一区二区三区综合| 亚洲久久久久久久久久久| 久久久久久久穴| 久久久久久久久久久久电影| 欧美在线视频你懂得| 久久精品免费一区二区| 日韩特级毛片| 亚洲免费观看高清完整版在线观看| 日韩wuma| 狠狠v欧美ⅴ日韩v亚洲v大胸| www.亚洲人| 国产精品一区二区av| 国产乱码精品一区二三区蜜臂| 日韩av中文字幕一区二区| 91sa在线看| 久久亚洲成人av| 你懂的亚洲视频| 久久综合九色九九| 91免费在线看片| 日本激情一区| 中文字幕视频一区二区在线有码| 性欧美一区二区| 台湾佬综合网| 国产丝袜一区视频在线观看 | 日韩在线欧美在线| 极品尤物一区二区| 日韩欧美视频专区| 色系列之999| 亚洲一级理论片| 成人在线亚洲| 日韩视频亚洲视频| 欧美成人777| 欧美日韩岛国| 久久免费少妇高潮久久精品99| 欧美日韩精品亚洲精品| 国产精品www994| 欧美激情视频网站| 日韩三级免费看| 亚洲一区欧美二区| 国产精品久久网| 亚洲综合精品国产一区二区三区 | 成年人看片网站| 亚洲天堂av资源在线观看| 日韩欧美区一区二| 久久久久久久人妻无码中文字幕爆| 爱爱精品视频| 亚洲男人7777| 久久精品色妇熟妇丰满人妻| 自拍偷拍欧美| 久久免费观看视频| 国产精品久久久久久人| 日本不卡高清视频| 91香蕉国产在线观看| 亚洲av色香蕉一区二区三区| 99视频超级精品| 欧洲一区二区日韩在线视频观看免费| 69视频在线| 亚洲国产视频一区二区| www.玖玖玖| 日韩成人精品一区二区三区| 日韩一区二区三区电影| 天堂久久久久久| 不卡一区2区| 色综合天天综合网国产成人网| 成年人午夜视频| 麻豆传媒一区二区三区| 国产精选一区二区| 波多野结衣在线网站| 亚洲免费观看高清完整版在线观看熊| 免费毛片小视频| 成人国产精品久久| 亚洲精品日韩在线| 草视频在线观看| 视频一区国产视频| 99re资源| 免费在线看黄色| 午夜精品影院在线观看| 久久久久久综合网| 五月综合久久| 久久综合伊人77777蜜臀| 成人在线免费看视频| 国产一区二区三区高清播放| 蜜桃传媒视频麻豆第一区免费观看 | 天天综合视频在线观看| 亚洲一级二级三级| wwwwxxxx日韩| 久久综合社区| 超在线视频97| 在线免费一区二区| 99国产精品国产精品毛片| 中文字幕一区二区三区5566| 成人影院av| 亚洲高清免费观看高清完整版| 无码人中文字幕| 亚洲一区区二区| 国产专区一区二区三区| 综合久久2019| 欧美精品在线视频| 男人的天堂官网 | 黄色一级免费大片| 嫩草国产精品入口| 欧美乱大交xxxxx| 亚洲图片视频小说| 国产欧美日韩综合精品一区二区| 成人在线观看你懂的| 亚洲视频一起| 欧美精品制服第一页| 在线观看国产小视频| 久久久夜色精品亚洲| 2022亚洲天堂| 日韩三级av| 91高清视频免费观看| 丰满少妇一级片| 亚洲一区国产视频| 国产精品99精品无码视亚| 亚洲国产精品日韩专区av有中文| 国产精品小说在线| 午夜视频在线看| 欧美日韩另类一区| 久久嫩草捆绑紧缚| 狠狠久久亚洲欧美| 欧美日韩dvd| 日韩欧洲国产| 韩国v欧美v日本v亚洲| 丰满岳乱妇国产精品一区| 亚洲综合成人在线视频| 最新版天堂资源在线| 亚洲美女视频在线免费观看| 久久99蜜桃综合影院免费观看| 在线天堂资源| 一区二区三区视频免费| 中文字幕在线播放日韩| 国产精品国产三级国产普通话三级 | 99久久久国产精品美女| 国产精品三级美女白浆呻吟 | www.欧美精品一二三区| 国产永久免费视频| 亚洲免费在线播放| 最新中文字幕日本| 亚洲一区免费| 亚洲乱码一区二区三区三上悠亚| 欧美一级做一级爱a做片性| 久久久av网站| 国产成人三级在线观看视频| 天天综合色天天综合色h| 在线免费看黄视频| 久久91精品国产91久久小草| 屁屁影院ccyy国产第一页| 国产精品流白浆在线观看| 57pao国产成人免费| 岛国在线大片| 欧美一二三在线| 日本三级网站在线观看| 中国av一区二区三区| 在线视频观看91| 日韩视频久久| 亚洲视频欧美在线| jizz国产精品| 国产成人精品电影久久久| 成人免费观看视频大全| 日韩成人中文字幕| 91麻豆成人精品国产| 亚洲www啪成人一区二区麻豆| 中文字幕在线1| 国内精品写真在线观看| 成人中文字幕在线播放| 四虎国产精品免费观看| 久久av二区| 国产精品一区三区在线观看| 日本国产高清不卡| 日皮视频在线观看| 在线视频中文亚洲| 欧美一级特黄aaaaaa大片在线观看 | 欧美日韩国产影片| 久久久一二三区| 国产亚洲欧美在线| 少妇伦子伦精品无吗| 蜜桃视频在线一区| 亚洲自偷自拍熟女另类| 午夜亚洲福利| 亚洲开发第一视频在线播放| 欧美人成在线观看ccc36| 成人亚洲激情网| 国产精品伦理| 国模精品系列视频| 哥也色在线视频| 亚洲性生活视频在线观看| 好吊色一区二区| 欧美福利视频一区| 国产男人搡女人免费视频| 午夜精品久久久久久久蜜桃app| 久久成人小视频| 久久久精品综合| 激情av中文字幕| 国产精品亚洲第一 | 国产精品1区2区3区| 九九热在线免费| 久久久噜噜噜| 中文字幕无码精品亚洲35| 女主播福利一区| 中文字幕一区二区三区四区五区六区| 九九热线有精品视频99| 久久国产欧美精品| 国产精品丝袜在线播放| 91久久爱成人| 在线综合色站| 亚洲影院色无极综合| 高清国产一区二区三区四区五区| 国产精品美女久久久久久免费 | 91美女片黄在线观| 久久电影天堂| 国产精品视频永久免费播放| 欧美中文字幕精在线不卡| 136fldh精品导航福利| 国产传媒在线观看| 91成人福利在线| 日韩电影毛片| 欧美一级成年大片在线观看| 日韩激情电影| 国产精品jizz在线观看麻豆| 欧美极品影院| 国产精品久久久久999| 欧美日韩亚洲国产| 国产免费观看久久黄| 欧美成人aaa| 91美女高潮出水| 综合中文字幕| 久久99精品国产99久久| 亚洲影院天堂中文av色| 日本三级中国三级99人妇网站 | 激情五月五月婷婷| 欧美成人一品| 国产自产在线视频| 亚洲综合日本| 无限资源日本好片| 狠狠色丁香九九婷婷综合五月| 男人操女人下面视频| 成年人午夜久久久| 麻豆精品免费视频| 国产精品国产三级国产普通话99| 日日噜噜夜夜狠狠久久波多野| 亚洲欧美日韩成人高清在线一区| 久久久久久久久97| 欧美日韩一区二区三区在线免费观看| 懂色av蜜臀av粉嫩av分享吧最新章节| 欧美性猛交xxxx乱大交退制版 | 精品午夜久久福利影院| 亚洲av无码成人精品区| 91老师片黄在线观看| 波多野结衣家庭教师在线观看| 亚洲精品午夜久久久| 久草手机在线观看| 欧美日韩精品一区二区天天拍小说| 99久久久久久久| 亚洲精品中文字幕有码专区| av电影在线观看| 欧美激情视频一区二区| 久久久一本精品| 99国产超薄丝袜足j在线观看| 一本色道久久综合狠狠躁的番外| 影音先锋欧美资源| 亚洲精品影视| 国产精品一区二区小说| 国产成人8x视频一区二区| 六月婷婷七月丁香| 夜夜亚洲天天久久| 看黄色一级大片| 日韩免费福利电影在线观看| 国产小视频免费在线观看| 欧美xxxx18性欧美| 日韩中文在线播放| 国产一区二区久久久| 日韩理论电影| 国产超级av在线| 丁香天五香天堂综合| 日韩欧美视频免费观看| 五月开心婷婷久久| 国产男女裸体做爰爽爽| 亚洲午夜未删减在线观看 | 天堂成人在线| 久久在线免费视频| 日本肉肉一区| 久久久久久久久久久一区| 欧美激情视频一区二区三区在线播放 | 四川一级毛毛片| 久久嫩草精品久久久精品一| 麻豆成人在线视频| 欧美无砖专区一中文字| 性插视频在线观看| 欧美人与物videos| 99久热在线精品视频观看| 欧美男人的天堂| 亚洲黄页一区| 一级日本黄色片| 国产精品二三区| 成人a v视频| 日韩精品中文字幕在线播放| 成人影音在线| 91精品黄色| 欧美不卡视频| 伊人影院在线观看视频| 亚洲精品福利视频网站| 国产又大又粗又硬| 日韩网站免费观看| 粉嫩91精品久久久久久久99蜜桃 | 香蕉久久国产av一区二区| 欧美激情在线视频二区| 亚洲国产欧美在线观看| 可以在线看黄的网站| 国产一区三区三区| 麻豆精品国产免费| 欧美精品18+| 麻豆tv入口在线看| 成人精品一区二区三区电影免费| 青青草97国产精品麻豆| 亚洲成人天堂网| 国产精品久久影院| 国产精品视频在线观看免费| 久久久精品一区二区三区| 91视频成人| 超碰10000| 成人免费观看视频| 香蕉免费毛片视频| 亚洲精品在线不卡| 99欧美精品| 中文精品一区二区三区| 狠狠色狠狠色合久久伊人| 久久久久无码精品国产| 精品国产乱码久久久久久浪潮| 高清毛片在线观看| 日本免费高清一区二区| 麻豆国产一区二区| 欧美又粗又大又长| 亚洲精品国产精品自产a区红杏吧 亚洲精品国产精品乱码不99按摩 亚洲精品国产精品久久清纯直播 亚洲精品国产精品国自产在线 | 精品亚洲一区二区三区在线播放| 123区在线| 欧美一级日本a级v片| 久久99精品一区二区三区| 动漫性做爰视频| 亚洲国产天堂网精品网站| 亚洲人成午夜免电影费观看| 日韩电影大全在线观看| 国产一区二区中文字幕| 久久精品国产亚洲av无码娇色| 日韩av在线免费观看| 蜜桃成人精品| 操bbb操bbb| 久久综合九色综合97婷婷| 又污又黄的网站| 欧美激情网友自拍| 欧美猛男男男激情videos| 99国产精品久久久久久| 亚洲第一主播视频| 97在线观看免费观看高清| 91九色露脸| 日韩国产欧美在线播放| 麻豆changesxxx国产| 一本色道久久综合狠狠躁篇的优点| 精品网站999| 久久久久久香蕉| 亚洲另类在线视频| 97国产成人高清在线观看| 国产精品丝袜久久久久久消防器材 | 亚洲国产精品电影在线观看| 韩国成人漫画| 2022中文字幕| 国产视频一区二区在线观看| 精品人妻久久久久一区二区三区|