如果TCP客戶端與TCP服務器建立TCP連接。然後,TCP客戶端從不向服務器發送任何數據包。如何在linux C中保持非活動的TCP連接?
首先,我大概知道TCP服務器附近的防火牆可能會向它發送一個RST。或者存在強制TCP連接結束的保持活動超時。但我不確切知道會發生什麼?任何人都可以解釋一下嗎?
其次,除非我想要結束這個TCP連接嗎?
我只希望TCP服務器可以在TCP堆棧上保留這個TCP連接。但我不想讓TCP客戶端參與,我不希望客戶端發送KEEP-ALIVE消息。我不想要任何其他第三方實體參與。我不在乎TCP客戶端是否丟失了連接。我只希望當我編寫TCP服務器的源代碼時,源代碼可以管理維護服務器上的TCP連接。
注意:我的編程語言是LINUX C
謝謝!
這是TCP的奇怪用法。爲什麼要在服務器上連接,而不關心客戶端是否斷開連接?或者我錯過了什麼? –
是的,這很奇怪。我正在做一項研究工作,我想分割TCP。 – misteryes
所以你想讓你的服務器保持TCP連接,即使客戶端退出?拿起剪刀剪斷電纜。否則,來自死亡客戶端的'FIN'或來自中間設備的'RST'無法流動,將會導致您的研究失敗。 –