TCP传输过程中丢包问题
生活随笔
收集整理的這篇文章主要介紹了
TCP传输过程中丢包问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
TCP協議本身是保證傳輸的數據完整性不會丟數據的。
如果通信中發現缺少數據或者丟包,
那么,最大的可能在于程序發送的過程或者接收的過程出現問題。
例如服務器給客戶端發大量數據,Send的頻率很高,
那么就有可能在Send時發生錯誤(原因可能是又多種,可能是程序處理邏輯問題,多線程同步問題,緩沖區溢出問題等等)
如果沒有對Send失敗做處理重發數據,那么客戶端收到的數據就會比理論應該收到的少,就會造成丟數據,丟包的現象。
這種現象,其實本質上來說不是丟包,也不是丟數據,只是因為程序處理有錯誤,導致有些數據沒有成功地被socket發送出去
如果通信中發現缺少數據或者丟包,
那么,最大的可能在于程序發送的過程或者接收的過程出現問題。
例如服務器給客戶端發大量數據,Send的頻率很高,
那么就有可能在Send時發生錯誤(原因可能是又多種,可能是程序處理邏輯問題,多線程同步問題,緩沖區溢出問題等等)
如果沒有對Send失敗做處理重發數據,那么客戶端收到的數據就會比理論應該收到的少,就會造成丟數據,丟包的現象。
這種現象,其實本質上來說不是丟包,也不是丟數據,只是因為程序處理有錯誤,導致有些數據沒有成功地被socket發送出去
總結
以上是生活随笔為你收集整理的TCP传输过程中丢包问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MMKV_MMKV使用教程
- 下一篇: 通达信 缠论分笔、分段DLL插件使用说明