在項目中使用到了UDP網絡編程知識點,在聯調或者測試中遇到了多種數據無法按照預期到達的情況;這裏不包括因API或者網絡不通導致數據無法達到的情況,主要是因爲用戶配置或者系統環境導致。
以下原因是項目中可能涉及的因素:
- 系統防火牆原因,導致數據無法到達
- 端口占用,導致數據被他程序接收
- 客戶端socket設置的服務器IP非預期地址
- 客戶端和服務端端口設置不一致
解決方案總結如下:
防火牆原因
- 關閉防火牆
- 添加程序例外
參考文章:https://blog.csdn.net/c_base_jin/article/details/102925721
排除端口非其他程序佔用
- Netstat –ano | findstr “端口” —查找端口的連接
- Tasklist | findstr “PID” --查看佔用該端口應用程序
IP和端口不一致導致
如果是因爲IP和端口號非預期值,導致數據無法到達,這裏只能通過日誌手段進程確認和排查。
因爲防火牆問題導致數據無法按照預期到達的概率最高,這裏進行自我總結,也供大家參考。