2014-07-21 37 views
1

我需要爲每個Wifi發送兩個雙精度值和一個整數值。UDP與TCP:發送小數據

我需要大約每秒25包。 如果其中一個失去了它的問題。但絕不應該發生,25人中有10人會迷路。

這可能嗎?

你推薦使用什麼? UDP或TCP?

+1

UDP沒有保證包將被交付,但頭比TCP小。它也沒有握手或確認。我不認爲這個問題是相關的。你應該自己選擇。您可以檢查您的要求,優先考慮它們,然後根據規格(帶寬,可靠性,速度等)做出選擇。我會說UDP可以完成這項工作,除非有高包丟失。 – razvanz

回答

1

Wifi中數據包丟失的概率實際上取決於許多因素:設備,距離接入點的距離,對等點的活動等等。

40%的數據包丟失(10/25)非常極端,但可能發生在右側(實際上:錯誤)設置。

你沒有提到在你的系統中使用TCP有什麼影響。開銷是一個問題嗎?如果沒有 - 我會建議使用TCP,直到證明需要額外的性能增益,然後才考慮轉移到UDP。

避免「過早優化」的種類。

+0

用於檢查發件人爲安全功能的TCP。但這不是必要的。但是如果TCP速度很快,那麼我寧願使用這個。 – brutus

+0

定期發送25個數據包的網絡本身不應該有問題。它主要是可以限制它的軟件。只是測試它。 –

0

你差不多不能使用TCP,因爲單個數據包丟失將觸發等待和重傳,需要幾秒鐘。單個丟失的數據包將完全中斷您的消息流。