㈠ linux c 語言怎麼實現心跳包
看你是怎麼定義(一般根據網路環境定義),比如說你的心跳包時間間隔為5分鍾,那伺服器可以內檢測下客戶端容6分鍾內有沒有發心跳包上來,有的話,重新計時6分鍾,如果6 分鍾內沒有上報心跳包的話,就把這客戶端的連接斷開.
㈡ 心跳包。如何發送TCP空幀的心跳包,它的格式是什麼最好用c語言實現,因為我是在ARM上實現tcp協議
一位元組對齊
struct heartbeat_req{
short reqNum;
}
struct heartbeat_rcv{
short reqNum;
}
你所有的包都有一個公用的報文頭吧,報文頭裡面定義一個欄位記錄請求類型,一個欄位記錄數據部分長度,要空幀的心跳包就發一個沒數據部分的報文頭,請求類型欄位填心跳包類型,數據部分長度填0就行了