TCP服務端(cmpp sgip壓測工具)介紹

2022-02-28 14:28:58 字數 850 閱讀 8041

在做tcp客戶端開發的過程中,大家可能都會遇到服務端不穩定性造成我們客戶端發生錯誤的情況,比如因為網路不好造成socket連線斷開,或者服務端主動關閉了你的連線請求。

那麼遇到這種情況你的程式該怎麼處理,對,應該做好斷開自動重連機制,而且要保證自動重連的及時性,以及資源消耗率、cpu佔用率都良好。

如果你想好了方案,改好了**,怎麼測試呢?

於是我寫了個測試工具,用於模擬服務端極端情況,以幫助我們完善我們的客戶端。

程式介面:

程式功能說明:

1.本工具實現tcp服務端,可對接任意tcp客戶端連線並直接顯示十六進製制資料報。

2.實現了cmpp2.0、cmpp3.0、sgip協議的服務端簡單應答,可用於對此三類客戶端進行併發測試,客戶端可用任意引數連線,本工具不驗證引數準確性。

3.可自行選擇是否自動回覆應答包。

4.可啟動自動每隔n秒斷開m秒極限環境測試。

因為我自己接觸三大運營商簡訊協議比較多,所以順帶實現了cmpp2.0、cmpp3.0、sgip協議的解析,以幫助測試這三類客戶端。

客戶端需要做好斷開自動重連,首先要及時,不能服務端斷開乙個小時了你再重連   那有什麼用呢,然後不能頻繁不間斷重連,比如服務端確實長時間斷開了,那你就要做一下重連減速控制,比方從每隔5s逐漸增加間隔時間,直至報警提醒人工干預。

這是我本地模擬用cmpp2.0客戶端進行**壓力測試的截圖:

TCP服務端實現併發

socket 在 tcp 協議下通訊 客戶端import socket 建立客戶端tcp協議通訊 c socket.socket 與指定服務端握手 c.connect 127.0.0.1 8080 通訊迴圈 while true 向服務端傳送資訊 msg input if len msg 0 con...

TCP客戶端服務端demo

服務端程式 include include include include include include include int main 列印握手成功的客戶端 struct sockaddr in servaddr socklen t nservlen sizeof servaddr getso...

TCP客戶 服務端程式示例

書中的例子中,作者自己封裝了很多方法和標頭檔案 本書有原始碼,需要按要求編譯執行 我做了修改,自己照著敲,可能方法上不太嚴謹,不會應當是可以執行的,自己敲出來也是一種學習。我們要實現如下的tcp客戶 伺服器 服務端 server.c include include include include i...