游戏服务器开发

在这里插入图片描述

1 2-课程概述

https://www.bilibili.com/video/BV1Ks41177oi?from=search&seid=5543458349378694564

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
nodejs lua在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
STL

IO

语言方面 精简

不像Python

无统一

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

游戏服务器

工作量 不是 网络连接

是 逻辑的 实现在这里插入图片描述
在这里插入图片描述

定义 一个 struct

有两个成员

指针 和 值 在这里插入图片描述
在这里插入图片描述

2 3-IP详解第一部分

在这里插入图片描述
在这里插入图片描述
二战 大量科学家 流入美国在这里插入图片描述
计算机 标准 规范 IP在这里插入图片描述

上个世纪 60 年代

无线电 卫星在这里插入图片描述
在这里插入图片描述

Dos 还没有

星际争霸 有个协议 在这里插入图片描述
开放系统 通讯 交互 模型

七层 打包 剥离

学术层 精细

生产应用层在这里插入图片描述在这里插入图片描述

一个层 好多个 协议

以太网 也 可以有 其他 连接方式

Transport —》 UDP TCP 在这里插入图片描述
包头 包尾 检查 错误

数据 放到 footer 接收方 校验 是否是 frame data 那么多

Link 也有除了 以太网 这 种封装方式 以外的

操作系统 做好了

封装 对 framedata 长度 有要求

46字节 最少 可以 用 00填充

1500字节

标准 802.3 1492 字节 MTU 最大传输单元

消息 大于 就在 IP分片

1M 在 Link 链路层 要 拆成 多少个 包

猫~ 200多个 字节

打包 限定是由 最小 那个 决定 (小水管 )

在这里插入图片描述
打印 值 与 地址 在这里插入图片描述
发布版本 编译 在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

debug 方式

发布 版本 地址 值 差

4 8

64 位

为什么 值差 不一样

3 5-IP详解第二部分

在这里插入图片描述

IP协议 不能保证 IP 数据报 能够 成功 到达 目的地

提供 最好的 传输服务

中间 Router 内存 用完

ip层 简单 处理 丢掉 整个 数据包

发送 ICMP 协议 消息 传达回来

所以 用 TCP 协议 来保证 消息 送达

IP不维护 后续 传递 信息 的 状态

每个数据报 相互 独立

可以 不按照 顺序 进行发送

也可以 各个 数据包 不同路由选择链路 途径 发送 A-> B 1 2 B收到 2 1

同一个 计算机 就可以保证 顺序

在这里插入图片描述

操作系统 是 另一个 从 尾开始 little endian 先传 最后面的 依次

但是 在 网络中 传输 是 BIg endian

跟 cpu 相关

内存地址 存储方式

Header 最小 20 字节

ipv4 6 版本 前 4个bit

在对[数据流] 进行流分类时,

在三层通过标记IP包头的TOS字段服务类型(TOS)

(8 bit)字段包括

一个3 bit的优先权子字段(现在已被忽略),

4 bit的TOS子字段和

1 bit未用位但必须置0。

4 bit的TOS分别代表:最小时延、最大吞吐量、最高可靠性和最小费用。

在这里插入图片描述
8bit 1 字节

16位表示

小端 little endian 最高位 放在后

大端 BIg endian 最低位 放在后

验证 系统 是 大端 还是 小端 系统

在这里插入图片描述
link - Internet 层 -1 TTL

32 64 传递 -1 减到0 时 就 丢掉 再返回 个 错误信息

8bit 定义 传输 协议 TCP/UDP

16 bit 校验包头 看是否出错在这里插入图片描述

32位 整形 最多 表示 多少个 数 42 亿

上世纪 60 年代

ipv6 128bit

跟硬件

租用服务器 关系 带宽

强连接 特定 场合在这里插入图片描述
联合 特殊的类 通过关键字union进行定义,一个union可以有多个数据成员

union 成员 共用 内存地址

4个 字节 的 int8 位 数组

和int32 的 整数

大小 一样 4个 字节 内存

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

容器 C++ 算法

c++ vector 类似于 数组

比数组安全

容量可拓展

STL 熟悉 好写 标准库 在这里插入图片描述
子网 子网寻址在这里插入图片描述

以太网 网卡

ip 地址 内网 子网掩码

Router location host

4 TCP

在这里插入图片描述
在这里插入图片描述

无连接 不可靠

数据块 报文段 TCP---->IP层

TCP 发完消息建立一个 Timer

收到数据包 确认 (延时确认)

延时超时 发包几次 消息 无法送达

以太网帧 1500字节 最大

往上 转 一层一层 防止 很多 包 一个一个 回

很短时间 内 传输速度 可以的 话 只 确认 一次就行

首部 数据 校验和

看数据 有没有错 有一个响应 保证 TCP层 没有错

流量控制 客户端 服务端 TCP 发送 接收方

都 分配 固定足够 内存

接收 只允许 接收 发过来的 定量数据 防止 网速慢 然后 一堆发过来(能要多少 给多少)

防止 较快 机器 把 较慢 机器 缓冲区 用完 (无法提供服务 )

TCP 把 应用程序 的 数据 封装 (字节流 )

不知道 粘包 。。。 先收 或者 后收 或者 一起 全收了

IP 可能重复 乱序

TCP 纠正在这里插入图片描述

以太网 最小 数据 传输 46字节

IP 20 TCP 20 字节

6 个字节 补零

带不带数据 对 链路层 没关系

应用层 有关系

IP + Port ==== Socket (插口配对 )

包 标记 sequence number

确认 消息包 Ack (ACK 标记 设置后 有作用) Acknowledgement number

跟 延时确认有关

发一个 确认 消息 后 确认 了 上次 发回来 的 哪个 包 是 OK的

​ 12字节 前

checknum 检验和 windows可选

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/1618695.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

从零开始搭建游戏服务器 第一节 创建一个简单的服务器架构

目录 引言技术选型正文创建基础架构IDEA创建项目添加Netty监听端口编写客户端进行测试 总结 引言 由于现在java web太卷了,所以各位同行可以考虑换一个赛道,做游戏还是很开心的。 本篇教程给新人用于学习游戏服务器的基本知识,给新人们一些…

鹅厂公开课:游戏服务器,了解一下?

讲师简介:张正,腾讯互娱北极光工作室群专家工程师,拥有12年游戏后台开发经验,主导和参与了《天涯明月刀》、《轩辕传奇》等自研大型MMORPG项目的后台开发,现担任《天涯明月刀》项目后台技术总监,北极光后台…

游戏服务器的那些事儿

游戏程序开发有两个大方向,包括前端和后端。其中,前端是指客户端方面,包括PC、手机和平板上面的可视化图形技术。后端则偏向于服务器,即用户不可见的部分。本文将通过游戏服务器的起源、功能特点、分类和发展历史,以及…

〔017〕Stable Diffusion 之 常用模型推荐 篇

✨ 目录 🎈 模型网站🎈 仿真系列🎈 国风系列🎈 卡通动漫系列🎈 3D系列🎈 一些好用的lora模型 🎈 模型网站 由于现在大模型超级多,导致每种画风的模型太多,那么如何选择最…

通达信形态匹配选股,不会编写指标公式也可以形态选股

编写指标公式匹配技术形态难度比较高,公式也很复杂,新手往往难以掌握,即使是老手也常常感到困难。之前编写了N字形态、W底(双底)、头肩底,虽然成功完成,但工作量巨大,公式理解起来也…

python函数学习

def add(num1,num2):resultnum1num2print(f"函数add输出的结果是{result}")return result resultadd(int(num1), int(num2)) print(f"调用def add(num1,num2):这个函数最终返回的结果是: {result}")# 函数返回值 ②无返回值(也就是说是返回值类…

【python】python智能停车场数据分析(代码+数据集)【独一无二】

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

Linux驱动之platform设备驱动

目录 前言 一、Linux驱动的分离与分层 二、开发环境 三、驱动程序编写 3.2 platform 驱动模块程序 3.3 测试app程序 四、运行测试 4.1 编译 4.2 运行测试 前言 前面几章编写的设备驱动都非常的简单,都是对 IO进行最简单的读写操作。像 I2C、SPI、 LCD 等这…

嵌入式系统启动文件及其流程的理解

简单概括总结嵌入式上电启动顺序 启动第1步:加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它。这是因为BIOS中包含了CPU的相关信息、设备启动顺序信息、硬盘信息、…

python使用win32库模拟拖拽文件发给指定窗口

最近要用python模拟人的操作给窗口发送拖拽文件的消息,网上搜了一大圈也没搜到现成可用的代码。幸好以前做过vc开发,熟悉点win32编程,于是装上vs和msdn,从消息WM_DROPFILES查起,慢慢得实现了这个功能。 WM_DROPFILES是…

TMS FNC UI Pack 3.1Crack,四个框架和五个操作系统的强大控件

TMS FNC UI Pack是TMS软件的产品,具有针对四个框架和五个操作系统的强大控件和丰富功能。 TMS FNC控件可以在以下框架中同时使用: TMS FNC控件可以在以下操作系统/浏览器中同时使用: TMS FNC控件可在以下IDE中同时使用: TMS FNC U…

TMS FNC组件crack,TMS FNC跨平台的图形组件

TMS FNC组件crack,TMS FNC跨平台的图形组件 TMS FNC Chart 为公司、统计、财政和科学信息开发的完全跨平台的图形组件。 TMS FNC 组件可以在这些框架上同时使用。 TMS FNC 组件可以在这些操作系统/浏览器上同时使用。 TMS FNC 控件可以在这些 IDE 上同时使用。 TMS FNC图表应用…

开源代码扫描工具 Socket新增对 Go 生态系统的支持

导读继日前宣布完成 2000 万美元的 A 轮融资后,开源代码扫描工具 Socket 紧接着宣布新增了对 Go 语言的支持;此前其仅支持 JavaScript 和 Python 语言。 “在过去的几个月中,我们观察到针对 Golang 的供应链攻击有所增加。意识到这种迫在眉睫…

Python数据分析的bs4用法

在爬虫的世界里,数据解析占用很重要的位置 数据解析原理: 标签定位提取标签、标签属性中存储的数据值 bs4数据解析原理: 1.实例化一个BeautifulSoup对象,并且将页面原码数据加载到该对象中2.通过调用BeautifulSoup对象中相关的…

BS架构通信原理

BS架构通信原理 1.关于域名 https://www.baidu.com/(网址) www.baidu.com(是一个域名) 在浏览器地址栏上输入域名,回车后,域名解析器会将域名解析出来一个具体的IP地址和端口号等。 该地址也可以通过DOS窗口来显示(…

Python爬虫:bs4解析

Python爬虫&#xff1a;bs4解析 html语法什么是bs4bs4安装从bs4中查找数据的方法bs4的基本使用实例&#xff1a;使用bs4爬取优美图库图片思路代码 html语法 <标签 属性“值” 属性“值”>被标记内容 </标签>什么是bs4 bs4全称&#xff1a;beautifulsoup4&#xf…

合泰BS8116A-3触摸芯片开发踩坑指南

一、硬件说明 引脚图&#xff1a; 接线&#xff1a; 说明&#xff1a;由于用到了唤醒检测&#xff0c;所以KEY16引脚用作IRQ中断唤醒功能&#xff0c;未使用引脚拉低。 二、IIC配置说明 1、最大波特率&#xff1a; 实际单片机配置最好不要设置波特率100Khz容易出错&#xff…

BS4基本用法

1.找米下锅&#xff0c;安装bs4库 pip install BeautifulSoup 2.此物何用&#xff0c;BS4作用 Beautiful Soup库是解析、遍历、维护“html标签树”的功能库。在爬虫中用于解析数据。 3.bs4标签元素&#xff0c;解析其组成&#xff0c;方可庖丁解牛&#xff0c;游刃有余 by…

XPath和bs4

XPath XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航 使用方法&#xff1a; 使用前要把response.text通过etree.HTML()转换为对应的格式&#xff0c;再通过 变量名.xpath(xpath)截取内容 responserequests.get(url,headershead…

Python爬虫 BeautifulSoup(bs4)-- bs4介绍、安装bs4、bs4基础语法

1. BeautifulSoup简介 BeautifulSoup简称&#xff1a; bs4 。什么是BeatifulSoup&#xff1f; BeautifulSoup&#xff0c;和lxml一样&#xff0c;是一个html的解析器&#xff0c;主要功能也是解析和提取数据 。优缺点&#xff1f; 缺点&#xff1a;效率没有lxml的效率高优点&a…