Unity网络开发基础 (1)基本认识

         本文章不作任何商业用途 仅作学习与交流

一、网络基础术语

1. 寻址标识

术语层级格式示例功能特性
MAC地址数据链路层00:1A:2B:3C:4D:5E物理网卡唯一标识,用于局域网通信
IP地址网络层IPv4:192.168.1.1
IPv6:2001:db8::1
逻辑网络定位,支持NAT转换
端口号传输层0-65535(HTTP:80)区分同一主机的不同服务

2.OSI模型



    A[OSI七层模型] -->|实际应用| B[TCP/IP四层模型]
    A --> C[物理层: 比特流传输]
    A --> D[数据链路层: MAC寻址]
    A --> E[网络层: IP路由]
    A --> F[传输层: 端到端连接]
    A --> G[会话层: 连接维护]
    A --> H[表示层: 数据格式化]
    A --> I[应用层: 用户接口]
    B --> J[网络接口层]
    B --> K[网络层]
    B --> L[传输层]
    B --> M[应用层]
```

二、基本网络体系

架构模型

C/S 架构

        将计算机应用系统分为两个部分:客户端和服务器端。客户端是用户与系统进行交互的界面,通常安装在用户的本地计算机上,用于向服务器发送请求并接收服务器返回的结果,为用户提供一个可视化的操作界面,以便用户方便地使用系统功能。服务器端则负责处理客户端发送的请求,通常安装在远程的服务器上,服务器根据客户端的请求进行相应的处理,如查询数据库、进行计算等,并将处理结果返回给客户端

c/s架构典型工作流 

核心特征

  • 权威服务器:所有关键逻辑在服务端运行
  • 单向通信:客户端发起请求,服务器响应
  • 状态集中管理:玩家数据、游戏进度统一存储

应用场景

  • MMORPG:《魔兽世界》的副本战斗
  • 竞技射击:《CS:GO》的命中判定
  • 策略游戏:《文明6》的回合同步

P2P

        是一种网络架构和通信模式,在这种模式中,网络中的节点(即对等体,Peer)地位平等,既可以作为客户端向其他节点请求资源或服务,也可以作为服务器为其他节点提供资源和服务,不存在中心服务器来进行集中管理和控制。每个节点都具有相同的功能和地位,它们通过直接互联形成一个分布式的网络结构,共同完成网络中的任务,如数据传输、资源共享等

 核心特征

  • 去中心化:节点间直接通信
  • 数据自治:每个节点维护游戏状态
  • NAT穿透:需要STUN/TURN服务器辅助

 应用场景

  • 本地联机:《胡闹厨房》的Switch本地多人模式
  • 语音聊天:《Discord》的P2P语音传输
  • 文件共享:游戏模组分发

C/s与p2p对比

特性C/S架构P2P架构
部署成本需要中心服务器无中心节点
延迟特性依赖服务器位置节点间直连
数据权威服务端为真理源节点自主验证
典型游戏MMO、吃鸡类局域网联机游戏

 数据通信模型

1. 传输层协议 

特性TCPUDP
连接方式面向连接(三次握手)无连接
可靠性数据重传确认机制尽力交付
排序保证严格数据包顺序不保证顺序
头部开销20-60字节8字节
典型应用文件传输、网页浏览实时音视频、游戏同步

2. 游戏通信特殊需求

  • 延迟敏感:FPS游戏要求<100ms延迟
  • 带宽优化:MOBA游戏需控制在5-10KB/s
  • 容错机制:采用UDP时需实现自定义重传
  • 安全防护:防作弊包篡改(HMAC验证)

三、游戏网络架构演进

1. 经典架构对比

类型帧同步状态同步
传输内容操作指令(按键序列)游戏对象状态(坐标/血量)
带宽消耗低(每秒2-4KB)高(每秒10-50KB)
开发难度逻辑一致性调试复杂状态同步策略设计复杂
适用类型格斗游戏、RTSMMO、开放世界

 2. 现代混合架构

核心组件

  • 会话服务器:处理登录匹配(HTTP/1.1)
  • 战场服务器:实时战斗逻辑(自定义UDP协议)
  • 观战服务器:数据镜像转发(WebSocket)
  • 同步中间件:KCP/QUIC协议优化

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哈基咩咩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值