日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

【Java 网络编程】TCP 传输机制 ( 数据拆分 | 排序 | 顺序发送 | 顺序组装 | 超时重发 )

發(fā)布時間:2025/6/17 java 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Java 网络编程】TCP 传输机制 ( 数据拆分 | 排序 | 顺序发送 | 顺序组装 | 超时重发 ) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

        • I TCP 傳輸過程
        • II TCP 傳輸示例
        • III TCP 傳輸特殊情況處理



I TCP 傳輸過程



1. TCP 傳輸過程 : 排序 , 順序發(fā)送 , 順序組裝 ;

  • 排序 : TCP 發(fā)送數(shù)據(jù)時 , 會將數(shù)據(jù)拆分成不同的片段 , 并對這些片段進行排序 ;
  • 順序發(fā)送 : 將排序好的數(shù)據(jù)片段順序發(fā)送 ;
  • 順序組裝 : 在接收端按照順序?qū)?shù)據(jù)片段組裝成原數(shù)據(jù) ;

2. 超時重發(fā)機制 : 如果某個數(shù)據(jù)片沒有到達 , 或者送達時間超時 , 接收方會將相關信息反饋給發(fā)送方 , 發(fā)送方需要將該數(shù)據(jù)片重新發(fā)送 ;

3. 拆分數(shù)據(jù)作用 ( 節(jié)省流量 ) : 當數(shù)據(jù)沒有送達或者超時 , 是需要重新發(fā)送數(shù)據(jù)的 , 如果不拆分數(shù)據(jù) , 將一整包數(shù)據(jù)整體發(fā)送 , 如果發(fā)送失敗 , 需要重新發(fā)送整個數(shù)據(jù) , 這樣就非常浪費流量 ;

4. 數(shù)據(jù)重發(fā)機制 : 服務器端收到客戶端發(fā)送的數(shù)據(jù)時 , 其會定時向客戶端發(fā)送服務器端已經(jīng)收到的數(shù)據(jù) , 如果客戶端沒有收到服務器端反饋的某條數(shù)據(jù)已經(jīng)送達 , 客戶端就會認為該數(shù)據(jù)沒有送達 , 客戶端重新將該數(shù)據(jù)重新發(fā)送一遍 ;



II TCP 傳輸示例



1. A 向 B 發(fā)送 5 個數(shù)據(jù)包 :

  • ① 發(fā)送第一幀數(shù)據(jù) ( 完成 ) : 首先將第一幀數(shù)據(jù)發(fā)送給 B , B 收到 1 數(shù)據(jù) , 將收到 1 數(shù)據(jù)反饋給 A , 表明已經(jīng)收到了第一幀數(shù)據(jù) ;
  • ② 發(fā)送第二幀數(shù)據(jù) ( 反饋信息未送達 ) : 發(fā)送第二幀數(shù)據(jù) , 接收方收到了 2 數(shù)據(jù) , 但是反饋信息沒能發(fā)送給 A ;
  • ③ 發(fā)送第三幀數(shù)據(jù) ( 沒有送達 B ) : 發(fā)送的第三幀數(shù)據(jù)沒有發(fā)送到 B , 中途丟包了 ;
  • ④ 發(fā)送第四幀數(shù)據(jù) ( 反饋信息未送達 ) : 第四幀數(shù)據(jù)送達 B , 但是 B 的反饋信息沒有送達 A ;
  • ⑤ 發(fā)送第五幀數(shù)據(jù) ( 完成 ) : 第五幀數(shù)據(jù)發(fā)送到 B , B 的反饋信息也送到了 A ;

2. 重發(fā)數(shù)據(jù) : 其中第三幀數(shù)據(jù)沒有送達 , 時鐘超時 , B 將相關信息發(fā)送到 A , A 重發(fā)第三幀數(shù)據(jù) ;



III TCP 傳輸特殊情況處理



1. 發(fā)送過程中沒有按順序到達 : 被拆分的數(shù)據(jù)包是按照排好的順序發(fā)送到接收端的 , 但是由于網(wǎng)絡原因 , 可能到達接收方不是原來的順序 , 接收方會重新進行排序 ;

2. 丟包情況處理 : 如果發(fā)送端在超時時間內(nèi)沒有收到接收端的某個包的反饋信息 , 就會認為該包沒有送達 , 在超時后 , 會重新發(fā)送該包數(shù)據(jù) ;

3. 連接斷開情況處理 : 如果連接傳輸中途斷開 , 需要進行重連 , 重連后再次發(fā)送數(shù)據(jù) ;

總結

以上是生活随笔為你收集整理的【Java 网络编程】TCP 传输机制 ( 数据拆分 | 排序 | 顺序发送 | 顺序组装 | 超时重发 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。