Unity——网络游戏通信方案
目錄
弱聯(lián)網(wǎng)和強聯(lián)網(wǎng)游戲
????????弱聯(lián)網(wǎng)游戲
? ? ? ? 強聯(lián)網(wǎng)游戲
????????弱聯(lián)網(wǎng)游戲代表
????????強聯(lián)網(wǎng)游戲代表
長連接和短連接游戲
? ? ? ??短連接游戲
? ? ? ? ? ? ? ??通信特點
? ? ? ? ? ? ? ??通信方式
????????長連接游戲
????????????????通信特點
????????????????通信方式
Socket、HTTP、FTP
????????Socket
????????Http/Https
? ? ? ??FTP
總結(jié)
弱聯(lián)網(wǎng)和強聯(lián)網(wǎng)游戲
????????弱聯(lián)網(wǎng)游戲:
????????????????這種游戲不會頻繁的進行數(shù)據(jù)通信,客戶端和服務(wù)端之間每次連接只處理一次請求,服務(wù)端處理完客戶端的請求后返回數(shù)據(jù)后就斷開連接了
? ? ? ? 強聯(lián)網(wǎng)游戲:
? ? ? ? ? ? ? ? 這種游戲會頻繁的和服務(wù)端進行通信,會一直和服務(wù)端保持連接狀態(tài),不停的和服務(wù)器之間交換數(shù)據(jù)
????????弱聯(lián)網(wǎng)游戲代表:
????????????????一般的三消類休閑游戲、卡牌游戲等都會是弱聯(lián)網(wǎng)游戲,這些游戲的核心玩法都由客戶端完成,客戶端處理完成后只是告訴服務(wù)端一個結(jié)果,服務(wù)端驗證結(jié)果即可,不需要隨時通信比如:開心消消樂、刀塔傳奇、我叫MT等等
????????強聯(lián)網(wǎng)游戲代表:
????????????????一般的MMORPG(角色扮演)、MOBA(多人在線競技游戲)、ACT(動作游戲)等等都會是強 聯(lián)網(wǎng)游戲,這些游戲的部分核心邏輯是由服務(wù)端進行處理,客戶端和服務(wù)端之間不停的在同步信息 比如:王者榮耀、守望先鋒、和平精英等等
長連接和短連接游戲
? ? ? ??長連接和短連接游戲是按照網(wǎng)絡(luò)游戲通信特點來劃分的
? ? ? ? 我們甚至可以認為
? ? ? ? 弱聯(lián)網(wǎng)游戲 ——> 短連接游戲
? ? ? ? 強聯(lián)網(wǎng)游戲 ——> 長連接游戲
? ? ? ??短連接游戲:
? ? ? ? ? ? ? ??需要傳輸數(shù)據(jù)時,建立連接,傳輸數(shù)據(jù),斷開連接
? ? ? ? ? ? ? ??通信特點:
????????????????????????需要通信時再連接,通信完畢斷開連接
? ? ? ? ? ? ? ??通信方式:
? ? ? ? ? ? ? ? ? ? ? ??HTTP超文本傳輸協(xié)議、HTTPS安全的超文本傳輸協(xié)議(他們本質(zhì)上是TCP協(xié)議)
????????長連接游戲:
????????????????不管是否需要傳輸數(shù)據(jù)??蛻舳伺c服務(wù)器一直處于連接狀態(tài),除非一端主動斷開,或者出現(xiàn)意外情況(客戶端關(guān)閉或服務(wù)端崩潰等)
????????????????通信特點:
????????????????????????連接一直建立,可以實時的傳輸數(shù)據(jù)
????????????????通信方式;
????????????????????????TCP傳輸控制協(xié)議或UDP用戶數(shù)據(jù)報協(xié)議
Socket、HTTP、FTP
????????Socket:
????????????????網(wǎng)絡(luò)套接字,是對網(wǎng)絡(luò)中不同主機上的應(yīng)用進程之間進行雙向通信的端點的抽象,一個套接字就是網(wǎng)絡(luò)上進程通信的一端,提供了應(yīng)用層進程利用網(wǎng)絡(luò)協(xié)議交換數(shù)據(jù)的機制
? ? ? ? ? ? ? ? 主要用于制作長連接游戲(強聯(lián)網(wǎng)游戲)
????????Http/Https:
? ? ? ? ? ? ? ??(安全的)超文本傳輸協(xié)議,是一個簡單的請求——響應(yīng)協(xié)議,它通常運行再TCP協(xié)議之上,它指定了客戶端可能發(fā)送給服務(wù)端什么樣的信息以及得到什么樣的響應(yīng)。
????????????????主要用于制作短連接游戲(弱聯(lián)網(wǎng)游戲),也可以用來進行資源下載
? ? ? ??FTP:
????????????????文件傳輸協(xié)議,是用于在網(wǎng)絡(luò)上進行文件傳輸?shù)囊惶讟藴蕝f(xié)議,可以利用它來進行網(wǎng)絡(luò)上資源的下載和上傳。它也是基于TCP傳輸,是面向連接的,為文件傳輸提供了可靠的保證
總結(jié)
????????網(wǎng)絡(luò)游戲的通信方案大體上可以根據(jù)游戲的實際情況分為兩種
? ? ? ? 長連接(強聯(lián)網(wǎng))游戲和短連接(弱聯(lián)網(wǎng))游戲
? ? ? ? 1.Socket網(wǎng)絡(luò)套接字 主要用來完成 長連接網(wǎng)絡(luò)游戲需求
? ? ? ? 2.Http 超文本傳輸協(xié)議 主要用來完成 短連接網(wǎng)絡(luò)游戲需求(或資源下載相關(guān))
? ? ? ? 3.Ftp文件傳輸協(xié)議 主要用來完成 資源的下載和上傳等需求
總結(jié)
以上是生活随笔為你收集整理的Unity——网络游戏通信方案的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用docx4j追尾合并多个docx文件
- 下一篇: golang快速入门[3]-go语言he