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

Java Socket超時淺析

開發 后端
在JAVA中,我們用 ServerSocket、Socket類創建一個套接字連接,從套接字得到的結果是一個InputStream以及OutputStream對象,以便將連接作為一個IO流對象對待。通過IO流可以從流中讀取數據或者寫數據到流中,讀寫IO流會有異常IOException產生。

套接字或插座(socket)是一種軟件形式的抽象,用于表達兩臺機器間一個連接的“終端”。針對一個特定的連接,每臺機器上都有一個“套接字”,可以想象它們之間有一條虛擬的“線纜”。JAVA 有兩個基于數據流的套接字類:ServerSocket,服務器用它“偵聽”進入的連接;Socket,客戶端用它初始一次連接。偵聽套接字只能接收新的連接請求,不能接收實際的數據包。

套接字是基于TCP/IP實現的,它是用來提供一個訪問TCP的服務接口,或者說套接字socket是TCP的應用編程接口API,通過它應用層就可以訪問TCP提供的服務。

在JAVA中,我們用 ServerSocket、Socket類創建一個套接字連接,從套接字得到的結果是一個InputStream以及OutputStream對象,以便將連接作為一個IO流對象對待。通過IO流可以從流中讀取數據或者寫數據到流中,讀寫IO流會有異常IOException產生。

套接字底層是基于TCP的,所以socket的超時和TCP超時是相同的。下面先討論套接字讀寫緩沖區,接著討論連接建立超時、讀寫超時以及JAVA套接字編程的嵌套異常捕獲和一個超時例子程序的抓包示例。

1、socket讀寫緩沖區

一旦創建了一個套接字實例,操作系統就會為其分配緩沖區以存放接收和要發送的數據。

JAVA可以設置讀寫緩沖區的大小-setReceiveBufferSize(int size), setSendBufferSize(int size)。

向輸出流寫數據并不意味著數據實際上已經被發送,它們只是被復制到了發送緩沖區隊列SendQ,就是在Socket的OutputStream上調用 flush()方法,也不能保證數據能夠立即發送到網絡。真正的數據發送是由操作系統的TCP協議棧模塊從緩沖區中取數據發送到網絡來完成的。

當有數據從網絡來到時,TCP協議棧模塊接收數據并放入接收緩沖區隊列RecvQ,輸入流InputStream通過read方法從RecvQ中取出數據。

2、socket連接建立超時

socket連接建立是基于TCP的連接建立過程。TCP的連接需要通過3次握手報文來完成,開始建立TCP連接時需要發送同步SYN報文,然后等待確認報文SYN+ACK,***再發送確認報文ACK。TCP連接的關閉通過4次揮手來完成,主動關閉TCP連接的一方發送FIN報文,等待對方的確認報文;被動關閉的一方也發送FIN報文,然等待確認報文。

正在等待TCP連接請求的一端有一個固定長度的連接隊列,該隊列中的連接已經被TCP接受(即三次握手已經完成),但還沒有被應用層所接受。TCP接受一個連接是將其放入這個連接隊列,而應用層接受連接是將其從該隊列中移出。應用層可以通過設置backlog變量來指明該連接隊列的***長度,即已被TCP接受而等待應用層接受的***連接數。

當一個連接請求SYN到達時,TCP確定是否接受這個連接。如果隊列中還有空間,TCP模塊將對SYN進行確認并完成連接的建立。但應用層只有在三次握手中的第三個報文收到后才會知道這個新連接。如果隊列沒有空間,TCP將不理會收到的SYN。

如果應用層不能及時接受已被TCP接受的連接,這些連接可能占滿整個連接隊列,新的連接請求可能不被響應而會超時。如果一個連接請求SYN發送后,一段時間后沒有收到確認SYN+ACK,TCP會重傳這個連接請求SYN兩次,每次重傳的時間間隔加倍,在規定的時間內仍沒有收到SYN+ACK,TCP將放棄這個連接請求,連接建立就超時了。

JAVA Socket連接建立超時和TCP是相同的,如果TCP建立連接時三次握手超時,那么導致Socket連接建立也就超時了。可以設置Socket連接建立的超時時間-

connect(SocketAddress endpoint, int timeout)

如果在timeout內,連接沒有建立成功,在TimeoutException異常被拋出。如果timeout的值小于三次握手的時間,那么Socket連接永遠也不會建立。

不同的應用層有不同的連接建立過程,Socket的連接建立和TCP一樣-僅僅需要三次握手就完成連接,但有些應用程序需要交互很多信息后才能成功建立連接,比如Telnet協議,在TCP三次握手完成后,需要進行選項協商之后,Telnet連接才建立完成。

3、socket讀超時

如果輸入緩沖隊列RecvQ中沒有數據,read操作會一直阻塞而掛起線程,直到有新的數據到來或者有異常產生。調用setSoTimeout(int timeout)可以設置超時時間,如果到了超時時間仍沒有數據,read會拋出一個SocketTimeoutException,程序需要捕獲這個異常,但是當前的socket連接仍然是有效的。

如果對方進程崩潰、對方機器突然重啟、網絡斷開,本端的read會一直阻塞下去,這時設置超時時間是非常重要的,否則調用read的線程會一直掛起。

TCP模塊把接收到的數據放入RecvQ中,直到應用層調用輸入流的read方法來讀取。如果RecvQ隊列被填滿了,這時TCP會根據滑動窗口機制通知對方不要繼續發送數據,本端停止接收從對端發送來的數據,直到接收者應用程序調用輸入流的read方法后騰出了空間。

4、socket寫超時

socket的寫超時是基于TCP的超時重傳。超時重傳是TCP保證數據可靠性傳輸的一個重要機制,其原理是在發送一個數據報文后就開啟一個計時器,在一定時間內如果沒有得到發送報文的確認ACK,那么就重新發送報文。如果重新發送多次之后,仍沒有確認報文,就發送一個復位報文RST,然后關閉TCP連接。***數據報文發送與復位報文傳輸之間的時間差大約為9分鐘,也就是說如果9分鐘內沒有得到確認報文,就關閉連接。但是這個值是根據不同的TCP協議棧實現而不同。

如果發送端調用write持續地寫出數據,直到SendQ隊列被填滿。如果在SendQ隊列已滿時調用write方法,則write將被阻塞,直到 SendQ有新的空閑空間為止,也就是說直到一些字節傳輸到了接收者套接字的RecvQ中。如果此時RecvQ隊列也已經被填滿,所有操作都將停止,直到接收端調用read方法將一些字節傳輸到應用程序。

當Socket的write發送數據時,如果網線斷開、對端進程崩潰或者對端機器重啟動,TCP模塊會重傳數據,***超時而關閉連接。下次如再調用write會導致一個異常而退出。

Socket寫超時是基于TCP協議棧的超時重傳機制,一般不需要設置write的超時時間,也沒有提供這種方法。

5、雙重嵌套異常捕獲

如果ServerSocket、Socket構造失敗,只需要僅僅捕獲這個構造失敗異常而不需要調用套接字的close方法來釋放資源(必須保證構造失敗后不會留下任何需要清除的資源),因為這時套接字內部資源沒有被成功分配。如果構造成功,必須進入一個try finally語句塊里調用close釋放套接字。請參照下面例子程序。

  1. import java.net.*;  
  2. import java.io.*;  
  3. public class SocketClientTest  
  4. {  
  5.   public static final int PORT = 8088;  
  6.   public static void main( String[] args ) throws Exception  
  7.   {  
  8.     InetAddress addr = InetAddress.getByName( "127.0.0.1" );  
  9.     Socket socket = new Socket();  
  10.     try 
  11.     {  
  12.       socket.connect( new InetSocketAddress( addr, PORT ), 30000 );  
  13.       socket.setSendBufferSize(100);  
  14.         
  15.       BufferedWriter out = new BufferedWriter( new OutputStreamWriter( socket.getOutputStream() ) );  
  16.       int i = 0;  
  17.         
  18.       whiletrue )  
  19.       {  
  20.         System.out.println( "client sent --- hello *** " + i++ );  
  21.         out.write( "client sent --- hello *** " + i );  
  22.         out.flush();  
  23.           
  24.         Thread.sleep( 1000 );  
  25.       }  
  26.     }  
  27.     finally 
  28.     {  
  29.       socket.close();  
  30.     }  
  31.   }  
  32. }  
  1. import java.io.*;  
  2. import java.net.ServerSocket;  
  3. import java.net.Socket;  
  4. public class SocketServerTest  
  5. {  
  6.   public static final int PORT = 8088;  
  7.   public static final int BACKLOG = 2;  
  8.   public static void main( String[] args ) throws IOException  
  9.   {  
  10.     ServerSocket server = new ServerSocket( PORT, BACKLOG );  
  11.     System.out.println("started: " + server);  
  12.     try 
  13.     {  
  14.       Socket socket = server.accept();  
  15.       try 
  16.       {  
  17.         BufferedReader in = new BufferedReader( new InputStreamReader( socket.getInputStream() ) );  
  18.         String info = null;  
  19.           
  20.         while( ( info = in.readLine() ) != null )  
  21.         {  
  22.           System.out.println( info );  
  23.         }  
  24.       }  
  25.       finally 
  26.       {  
  27.         socket.close();  
  28.       }  
  29.     }  
  30.     finally 
  31.     {  
  32.       server.close();  
  33.     }  
  34.   }  

執行上面的程序,在程序運行一會兒之后,斷開client和server之間的網絡連接,在機器上輸出如下:

Server上的輸出:

Echoing:client sent -----hello0
Echoing:client sent -----hello1
Echoing:client sent -----hello2
Echoing:client sent -----hello3
Echoing:client sent -----hello4
Echoing:client sent -----hello5
Echoing:client sent -----hello6 

---->> 斷開了網絡連接之后沒有數據輸出

Client上的輸出:

socket default timeout = 0
socket = Socket[addr=/10.15.9.99,port=8088,localport=4691]
begin to read
client sent --- hello *** 0
client sent --- hello *** 1
client sent --- hello *** 2
client sent --- hello *** 3
client sent --- hello *** 4
client sent --- hello *** 5
client sent --- hello *** 6
client sent --- hello *** 7
client sent --- hello *** 8 
client sent --- hello *** 9
client sent --- hello *** 10 

---->> 斷開網絡連接后客戶端進程掛起

  1. java.net.SocketException : Connection reset by peer: socket write error  
  2.  
  3.     at java.net.SocketOutputStream.socketWrite0( Native Method )  
  4.  
  5.     at java.net.SocketOutputStream.socketWrite( SocketOutputStream.java:92 )  
  6.  
  7.     at java.net.SocketOutputStream.write( SocketOutputStream.java:136 )  
  8.  
  9.     at sun.nio.cs.StreamEncoder.writeBytes( StreamEncoder.java:202 )  
  10.  
  11.     at sun.nio.cs.StreamEncoder.implFlushBuffer( StreamEncoder.java:272 )  
  12.  
  13.     at sun.nio.cs.StreamEncoder.implFlush( StreamEncoder.java:276 )  
  14.  
  15.     at sun.nio.cs.StreamEncoder.flush( StreamEncoder.java:122 )  
  16.  
  17.     at java.io.OutputStreamWriter.flush( OutputStreamWriter.java:212 )  
  18.  
  19.     at java.io.BufferedWriter.flush( BufferedWriter.java:236 )  
  20.  
  21.     at com.xtera.view.SocketClientTest.main( SocketClientTest.java:99 )  

當hello6被發送到server端后,網絡連接被斷開,這時server端不能接收任何數據而掛起。client端仍然繼續發送數據,實際上hello7、hello8、hello9、hello10都被復制到SendQ隊列中,write方法立即返回。當client的SendQ隊列被填滿之后,write方法就被阻塞。TCP模塊在發送報文hello7之后,沒有收到確認而超時重傳,再重傳幾次之后關閉了TCP連接,同時導致被阻塞的write方法異常返回。

通過抓包工具,我們可以看到超時重傳的報文。

 

原文鏈接:http://blog.csdn.net/sureyonder/article/details/5633647

【編輯推薦】

  1. Java Socket重要參數講解
  2. Java Socket編程如何建立兩者關系
  3. Java Socket通信讀取相關信息代碼
  4. Java Socket應答與HTTP服務器的瓜葛
  5. Java Socket通信Flash編程技巧
責任編輯:林師授 來源: sureyonder的博客
相關推薦

2020-10-15 19:10:05

LinuxAPI函數

2012-03-19 11:41:30

JavaSocket

2009-07-07 17:51:50

Java Servle

2010-09-25 14:01:11

Java跨平臺

2009-07-10 14:20:01

AcceleratorJava Swing

2009-06-19 16:36:29

Java程序調試

2009-06-11 17:03:29

Java線程

2012-02-15 13:19:04

JavaJava Socket

2009-11-23 16:03:48

SUSE Java開發

2009-06-23 14:15:00

Java垃圾回收

2012-10-29 11:21:35

IBMdw

2024-12-26 12:59:39

2009-06-11 16:44:06

超時控制Java線程

2022-12-07 10:56:23

線程池監控執行超時

2009-06-18 13:51:07

Java虛擬機

2009-07-22 15:58:34

JDBC調用Oracl

2010-03-22 10:42:37

Java Socket

2009-07-06 10:41:38

flex與servle

2009-08-03 16:28:53

Java語言與C#語言

2010-03-19 10:58:48

Java Socket
點贊
收藏

51CTO技術棧公眾號

久久久999精品| 动漫精品一区二区| 成人资源av| 国产在线观看黄色| 99国产精品免费视频观看| 69堂成人精品免费视频| 欧美日韩一道本| 色综合久久影院| 丁香六月久久综合狠狠色| 国产成人中文字幕| 久久久精品视频在线| 国产精品视频一区二区三区四蜜臂| 欧美精品日韩综合在线| 欧洲黄色一级视频| 成人免费观看视频大全| 久久久精品2019中文字幕之3| 成人黄色片在线| 国产成人精品片| 欧美一区国产在线| 在线观看精品国产视频| 一起草在线视频| 国产精品18| 在线观看91精品国产入口| 成人免费观看在线| 麻豆系列在线观看| 久久久久综合网| 韩国成人av| 亚洲AV无码精品国产| 热久久久久久久| 2019中文字幕免费视频| 免费三片在线播放| 66久久国产| 中文字幕一区二区三区电影| 国产吞精囗交久久久| 视频二区欧美| 日韩久久免费av| 亚洲免费黄色录像| 欧美成人黄色| 精品视频免费看| 激情综合网俺也去| 另类激情视频| 色综合咪咪久久| 日韩精品视频久久| 嗯啊主人调教在线播放视频 | 美女91在线| 中文字幕五月欧美| 亚洲欧美综合一区| 北条麻妃在线| 国产片一区二区三区| 噜噜噜噜噜久久久久久91| 日韩中文字幕观看| 99精品欧美一区二区蜜桃免费 | 国产91色在线免费| 狠狠人妻久久久久久| 久久精品日产第一区二区| 2019中文字幕在线免费观看| 日韩污视频在线观看| 亚洲国产片色| 欧美中文字幕视频在线观看| av资源免费观看| 亚洲影视在线| 日韩av手机在线观看| 亚洲色成人www永久网站| 三级影片在线观看欧美日韩一区二区| 国产成人精品日本亚洲| 国产精品久久久久久久久夜色| 日韩在线卡一卡二| 国产精品丝袜一区二区三区| 一区二区 亚洲| 国产精品99久久久| 国产亚洲第一区| 黑人与亚洲人色ⅹvideos| 国产欧美日韩在线视频| 一区二区三区四区在线视频| 久热国产在线| 亚洲午夜视频在线观看| 免费看国产曰批40分钟| 香蕉视频亚洲一级| 欧美剧情电影在线观看完整版免费励志电影| 狠狠操狠狠干视频| 91精品久久久久久综合五月天| 亚洲精品福利免费在线观看| 精品成人av一区二区三区| 欧美亚洲国产精品久久| 九九久久久久久久久激情| 激情五月色婷婷| 日本大胆欧美人术艺术动态| 成人在线一区二区| 日本韩国在线观看| 国产免费观看久久| 日韩人妻一区二区三区蜜桃视频| h片在线观看视频免费| 欧美自拍偷拍午夜视频| 一级黄色免费毛片| 亚洲综合福利| 久久久久999| 丁香六月婷婷综合| 国产在线视频一区二区| 免费av在线一区二区| 老司机福利在线视频| 香蕉影视欧美成人| 国产无遮挡猛进猛出免费软件| 大陆精大陆国产国语精品| 亚洲欧美制服综合另类| 欧美日韩在线观看成人| 久热精品在线| 国产精品久久九九| 日本视频在线| 欧美性xxxxx极品| 国产老头和老头xxxx×| 国产亚洲一卡2卡3卡4卡新区| 欧美夫妻性视频| 在线亚洲欧美日韩| 久久综合九色欧美综合狠狠| 久久久无码中文字幕久...| 偷拍中文亚洲欧美动漫| 亚洲精品久久久一区二区三区| 污污视频网站在线免费观看| 国产欧美在线| 福利精品视频| 超碰caoporn久久| 欧美三级资源在线| 波多野结衣 在线| 在线精品观看| 91嫩草在线| 麻豆网站在线| 欧美色综合影院| 91中文字幕永久在线| 亚洲高清二区| 成人蜜桃视频| 污视频网站在线免费| 欧美日韩成人一区二区| 伊人影院综合网| 日韩激情一区二区| 欧美高清视频一区二区三区在线观看 | 成人国产网站| 亚洲性视频网址| www.com亚洲| 久久久九九九九| 男女av免费观看| 日韩黄色网络| 欧美一区二区大胆人体摄影专业网站| 日本黄色三级视频| 午夜精品久久久久久久久久久 | 影视先锋久久| 欧美一级在线播放| 神马精品久久| 色天使色偷偷av一区二区| ass精品国模裸体欣赏pics| 亚洲精选成人| 久久久久高清| 肉色欧美久久久久久久免费看| 日韩精品在线影院| 福利网址在线观看| 国产喷白浆一区二区三区| 天天操天天摸天天爽| 日产精品一区二区| 成人激情视频在线观看| 二区在线播放| 亚洲高清在线观看| 在线天堂中文字幕| 国产日韩欧美电影| 天天干天天玩天天操| 91成人精品视频| 动漫精品视频| 一区二区三区四区日本视频| 亚洲午夜小视频| 一级黄色大片免费观看| 亚洲精品五月天| 三级黄色片免费看| 亚洲精品一二| 亚洲第一导航| 欧美久久亚洲| 欧美专区国产专区| 99riav在线| 欧美成人aa大片| 亚洲免费在线视频观看| 国产精品天美传媒沈樵| 天天操精品视频| 在线一区视频| 一区二区三区在线视频看| 伊人久久噜噜噜躁狠狠躁| 日韩美女av在线免费观看| 欧美成人高清在线| 欧美成人精品二区三区99精品| 亚洲天堂一区在线观看| 国产精品成人在线观看| 中文字幕人妻一区| 日韩高清不卡一区| 中文字幕一区二区三区四区五区| 超碰97久久| 国产精品观看在线亚洲人成网| www.在线视频| 亚洲精品中文字幕av| 国产三级三级在线观看| 精品国产精品自拍| 五月综合色婷婷| 久久综合视频网| 波多野结衣中文字幕在线播放| 国产欧美综合一区二区三区| www.黄色网址.com| 夜色77av精品影院| 99国产在线视频| 国产麻豆久久| 97在线精品视频| a级网站在线播放| 亚洲性日韩精品一区二区| 韩国av电影在线观看| 欧美日韩国产成人在线91| 成人午夜视频精品一区| 亚洲欧美欧美一区二区三区| 成人免费无遮挡无码黄漫视频| 国产91在线看| 在线观看岛国av| 老司机精品导航| 人妻少妇精品无码专区二区| 天堂美国久久| 日韩片电影在线免费观看| 牛牛影视久久网| 97免费高清电视剧观看| 国产91亚洲精品久久久| 日韩av色综合| 天堂av在线| 久久人91精品久久久久久不卡| 国产写真视频在线观看| 在线观看国产精品日韩av| 国家队第一季免费高清在线观看| 亚洲精品一区在线观看| 国产av一区二区三区精品| 欧美性色综合网| 加勒比在线一区| 欧美色道久久88综合亚洲精品| 久久久久久久久久一区二区三区 | 特级黄色录像片| 日韩欧美午夜| 亚洲欧美日韩精品综合在线观看| 视频一区欧美| 欧美日韩精品一区| 亚洲人成亚洲精品| 你懂的网址一区二区三区| 老司机精品视频在线播放| 韩国成人一区| 亚洲欧洲免费| 色综合久久av| 日本久久黄色| 在线观看日韩片| 91精品国产91久久综合| 女同性恋一区二区| 中文字幕免费一区二区| 免费高清一区二区三区| 黄色一区二区三区四区| 国产69精品久久久久久久| 亚洲日本欧美| 日韩精品一区二区三区久久| 日韩中文字幕区一区有砖一区| 五月婷婷狠狠操| 精久久久久久久久久久| 伊人成人免费视频| 五月婷婷中文字幕| 成人小视频在线| 成人区人妻精品一区二| av激情亚洲男人天堂| 亚洲天堂久久新| 国产精品网站在线播放| 国产精品视频一区二区三| 亚洲乱码中文字幕| 国产精品a成v人在线播放| 婷婷丁香久久五月婷婷| 欧美精品一二三四区| 欧美色成人综合| 99这里有精品视频| 欧美精品一区二区高清在线观看 | 欧美一区二区激情| 亚洲日本成人| 成人午夜激情av| 国产在线一区观看| 亚洲精品乱码久久| 日本一区二区动态图| 久久中文免费视频| 亚洲成在线观看| 成人免费视频国产免费| 欧美日韩大陆一区二区| 韩国av在线免费观看| 日韩av在线一区二区| eeuss影院www在线观看| 久久6精品影院| www.成人爱| 亚洲综合精品一区二区| 欧美三级午夜理伦三级在线观看| 亚欧洲精品在线视频免费观看| 一区二区不卡| 88av.com| 成人午夜短视频| 香蕉久久久久久久| 午夜精品福利一区二区蜜股av| 中文字幕第99页| 欧美精品一区二区三区高清aⅴ| 91涩漫在线观看| 2021国产精品视频| 国产精品一区二区三区www| 免费成人看片网址| 综合激情网站| 午夜在线观看av| av电影在线观看完整版一区二区| 麻豆精品国产免费| 日韩欧美成人精品| 超碰在线人人干| 日韩小视频网址| 日韩av大片站长工具| 国产精品对白刺激久久久| 91日韩视频| 日韩欧美精品在线观看视频| 国产不卡在线播放| 精品无码一区二区三区蜜臀| 欧洲一区二区三区在线| 天堂中文字幕在线| 色中色综合影院手机版在线观看| 成人黄色免费观看| 欧美在线3区| 亚洲女人av| av电影在线播放| 一区二区三区日韩欧美精品| 中文字幕一区二区三区波野结| 亚洲欧美日韩精品| 黄色在线免费观看网站| 国产精华一区二区三区| 亚洲视频电影在线| 天天操天天干天天做| 国产精品久久精品日日| 69亚洲精品久久久蜜桃小说 | 欧美日韩在线看片| 国产精品v片在线观看不卡| 亚洲精品国模| 国产老熟妇精品观看| av电影天堂一区二区在线| 精品午夜福利视频| 日韩欧美成人一区| 在线电影福利片| 亚洲影院高清在线| 综合久久综合| 永久av免费在线观看| 亚洲日本欧美天堂| 国产免费高清av| 久久综合久久美利坚合众国| 国产成人免费av一区二区午夜 | 蜜桃av乱码一区二区三区| 欧美性生交xxxxx久久久| 麻豆av电影在线观看| 热草久综合在线| 国产videos久久| 久久精品影视大全| 国产精品久久久久三级| 亚洲综合五月天婷婷丁香| 日韩视频在线免费观看| 91精品国产自产观看在线| 国产免费一区二区三区四在线播放 | 欧美呦呦网站| 国产三级三级看三级| 成人免费小视频| 国产成人三级一区二区在线观看一| 超碰精品一区二区三区乱码| 亚洲精品影片| 国产美女网站在线观看| 久久综合九色综合欧美98| 亚洲天堂视频在线播放| 少妇高潮久久77777| 麻豆国产一区| 国产精品专区在线| 久久久久久久久久看片| 亚洲无码精品在线播放| 欧美成人精品一区| 美女网站色精品尤物极品姐弟| 情侣黄网站免费看| 国产精品国产精品国产专区不片| 国产成人麻豆精品午夜在线 | 这里只有视频精品| 北岛玲精品视频在线观看| 黄色三级中文字幕| 久久久精品蜜桃| 国产一区二区三区三州| 欧美极品欧美精品欧美视频| 久久99久久人婷婷精品综合 | 香蕉成人app| 国产精品动漫网站| 国产精品的网站| 无码国产精品一区二区免费16| 国产精品美乳一区二区免费| 欧美激情aⅴ一区二区三区| 18禁裸乳无遮挡啪啪无码免费| 欧美日韩免费在线视频| 2021天堂中文幕一二区在线观| 色女人综合av| av男人天堂一区| 国产偷拍一区二区| 日本久久亚洲电影| 午夜亚洲福利| 最新中文字幕av| 亚洲国产日韩欧美在线99| 高清精品久久| 久草在在线视频|