遊戲開發中網路通訊協議對比

2021-08-11 11:43:32 字數 1078 閱讀 3008

遊戲聯網需求有弱聯網遊戲,即時互動類遊戲

選擇通訊協議的時候主要關注於延遲低,易用,低成本等

下面對比tcp,udp,http,websocket 四種協議優缺點、特性

tcp:

優點: 可靠性 、全雙工協議、開源支援多、應用較廣泛、面向連線、研發成本低、報文內容不限制(ip層自動分包,重傳,不大於1452bytes)

缺點: 作業系統:較耗記憶體,支援連線數有限、設計:協議較複雜,自定義應用層協議、網路:網路差情況下延遲較高、傳輸:效率低於udp協議

特性: 面向連線、可靠性、全雙工協議、基於ip層、osi參考模型位於傳輸層、適用於二進位制傳輸

udp

優點: 作業系統:併發高,記憶體消耗較低、傳輸:效率高,網路延遲低、傳輸模型簡單,研發成本低

缺點: 協議不可靠、單向協議、開源支援少、報文內容有限,不能大於1464bytes、設計:協議設計較複雜、網路:網路差,而且丟資料報文

特性:無連線,不可靠,基於ip協議層,osi參考模型位於傳輸層,最大努力交付,適用於二進位制傳輸

優點: 協議較成熟,應用廣泛、基於tcp/ip,擁有tcp優點、研發成本很低,開發快速、開源軟體較多,nginx,apache,tomact等

缺點: 無狀態無連線、只有pull模式,不支援push、資料報文較大

特性: 基於tcp/ip應用層協議、無狀態,無連線、支援c/s模式、適用於文字傳輸

websocket

優點:協議較成熟、基於tcp/ip,擁有tcp優點、資料報文較小,包頭非常小、面向連線,有狀態協議、開源較多,開發較快

缺點:沒發現啥缺點

協議選擇

通過以上對協議特性分析,我想大家心裡已經有低兒了。建議:

1、對於弱聯網類遊戲,必須消除類的,卡牌類的,可以直接http協議,考慮安全的話直接https,或者對內容體做對稱加密;

2、對於實時性,互動性要求較高,且team有過相關經驗,可以優先選擇websocket,其次tcp協議;

3、對於實時性要求極高,且可達性要求一般可以選擇udp協議;

4、區域網對戰類,賽車類,直接來udp協議吧(公網對戰,p2p的udp還得「打洞」處理)

遊戲開發中網路通訊協議對比

遊戲聯網需求有弱聯網遊戲,即時互動類遊戲 選擇通訊協議的時候主要關注於延遲低,易用,低成本等 下面對比tcp,udp,http,websocket 四種協議優缺點 特性 tcp 優點 可靠性 全雙工協議 開源支援多 應用較廣泛 面向連線 研發成本低 報文內容不限制 ip層自動分包,重傳,不大於145...

網路通訊協議

網路協議是構成網路的基本元件之一,協議是若干規則和協定的組合,一般指機器1的第n 層與機器2的第 n層的對話,這種對話中所使用的若干規則和約束便稱為第 n層網路協議。tcp ip 網路體系結構模型就是遵循 tcp ip 協議進行通訊的一種分層體系,現今,internet 和intranet 所使用的...

網路通訊協議

通過計算機網路可以使多台計算機實現連線,位於同乙個網路中的計算機在進行連線和通訊時需要遵守一定的規則,這就好比在道路中行駛的汽車一定要遵守交通規則一樣。在計算機網路中,這些連線和通訊的規則被稱為網路通訊協議,它對資料的傳輸格式 傳輸速率 傳輸步驟等做了統一規定,通訊雙方必須同時遵守才能完成資料交換。...