我有一個TCP客戶端不斷向服務器發送數據。客戶端與服務器成功連接後,客戶端會以幾秒鐘的間隔連續發送數據。在linux中閱讀send-q TCP socket的內容
當客戶端和服務器之間的鏈接在發送少量數據後斷開連接後,我才知道TCP根據TCP_retries2中的值重新傳輸了數據,我將此值配置爲8,這樣我在寫入錯誤後100秒。 但send-q中會有一些未確認的數據包。
在關閉此套接字之前,有沒有辦法在程序中讀取send-q中未確認的數據包的內容,或者我應該記住發送數據並在重新連接後重新發送數據?有沒有其他的方式來實現這一點?
感謝您的回答。目前我沒有任何應用程序級別的確認。我想在我從客戶端收到重新發送time_out錯誤之前發送所有發送100秒的數據。我必須考慮應用程序級別的確認。 – Praveen