目录
前言
网络通信是服务器与Unity应用程序之间进行数据交换和通信的过程,这种通信在游戏开发、实时数据同步、多人游戏等场景中非常常见。对于Unity游戏开发来说,网络通信是实现游戏功能、提升用户体验的关键环节。
弱联网和强联网游戏
我们知道,网络游戏是以C/S模型为基础进行开发的由客户端和服务端组成。
弱联网游戏
这种游戏不会频繁的进行数据通信,服务端处理完客户端和服务端之间每次连接只处理一次请求,客户端的请求后返回数据后就断开连接了。
弱联网游戏代表:
一般的三消类休闲游戏、卡牌游戏等都会是弱联网游戏,这些游戏的核心玩法都由客户端完成,客户端处理完成后只是告诉服务端一个结果,服务端验证结果即可,不需要随时通信。比如:开心消消乐、刀塔传奇、我叫MT等等。
强联网游戏
这种游戏会频繁的和服务端进行通信,会一直和服多端但持许接状态,不停的和服务器之间交换数据。
强联网游戏代表:
一般的MMORPG(角色扮演)、MOBA(多人在线竞技游戏)、ACT(动作游戏)等等都会是强联网游戏,这些游戏的部分核心逻辑是由服务端进行处理,客户端和服务端之间不停的在同步信息比如:王者荣耀、守望先锋、和平精英等等。
长连接和短连接游戏
短连接游戏
需要传输数据时,建立连接,传输数据,获得响应,断开连接通信特点:需要通信时再连接,通信完毕断开连接通信方式:1HTTP超文本传输协议、HTTPS安全的超文本传输协议(他们本质上是TCP协议)。
长连接游戏
不管是否需要传输数据,客户端与服务器一直处于连接状态,除非一端主动断开,或者出现意外情况(客户端关闭或服务端崩溃等)通信特点:连接一直建立,可以实时的传输数据通信方式:TCP传输控制协议 或 UDP用户数据报协议。
Socket、HTTP、FTP
Socket
网络套接字,是对网络中不同主机上的应用进程之间进行双向通信的端点的抽象一个套接字就是网络上进程通信的一段,提供了应用层进程利用网络协议交换数据的机制我们之后主要要学习的就是Socket网络套接字当中的各种API来进行网络通信主要用于制作长连接游戏(强联网游戏)
Http/Https
(安全的)超文本传输协议,是一个简单的请求-响应协议,它通常运行在TCP协议之上,它指定了客户端可能发送给服务端什么样的信息以及得到什么样的响应。主要用于制作短连接游戏(弱联网游戏),也可以用来进行资源下载
FTP
文件传输协议,是用于在网络上进行文件传输的一套标准协议可以利用它来进行网络上资源的下载和上传。它也是基于TCP的传输,是面向连接的,为文件传输提供了可靠的保证。
总结
网络游戏的通信方案大体上可以根据游戏的实际情况分为两种:长连接(强联网)游戏和短连接(弱联网)游戏
1.Socket网络套接字主要用来完成长连接网络游戏需求
2.Http超文本传输协议主要用来完成短连接网络游戏需求(或者资源下载相关)
3.Ftp文件传输协议主要用来完成资源的下载和上传等需求
标签:网络通信,游戏,通信,联网,part1,Unity,连接,服务端,客户端 From: https://blog.csdn.net/weixin_67674686/article/details/143449494