《网络多人游戏 构架与编程》 第二章 互联网 Part1

2024-06-17 02:04

本文主要是介绍《网络多人游戏 构架与编程》 第二章 互联网 Part1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.分组交换

它的实现是将传输的信息拆分为小块,称为分组(数据包)。线路一次可以运载来自许多传输路线中的分组,提高了可用性。

它的实现,需要一个正式的协议集合来真正定义数据是如何打包成分组,又如何转发到网络中的。

现在的互联网,到协议为TCP/IP协议族。

二.TCP/IP 模型

本书主要讲解 五层网络模型由下到上,即物理层、链路层、网络层、传输层、应用层。

每层即有自己的职责,又要满足上层的需求。上层就像它的甲方一样。 

代表性职责包括:1.接受上层数据。2、通过添加头部,有时尾部,对数据进行封装;3 将数据转发到下一层做进一步传输;4 、接受下一层传输来的数据;5,去掉报头,解封装传输来的数据包;6,将数据转发到上一层做进一步的处理。

是双向的,既要承上又要启下,中间还要数据处理。

每个层次是接口,协议或者协议的集合是接口的实现。

1. 物理层:光纤,同轴电缆。无线电波

2.链路层: 数据传输单位称为帧。链路层,相当于给信息,分解分块,包上了保护壳一样。

定义主机的唯一标识方法;定义帧的格式;定义帧的长短;定义一种将帧转换为电子信号的物理方法。每种物理介质都选用对应链路层协议提供对应服务。但链路层自身通信不可靠,需要由更上层来实现。

 有一个链路层协议 以太网。以太网不是一个协议而是基于以太网蓝皮书的一组协议。它引入了MAC地址。一个MAC地址对应一个网卡。MAC地址中前24比特叫作组织唯一标识符。是由IEEE给厂家分配。MAC地址,不仅在以太网,包括无线网和蓝牙。但现在,许多网卡可以被软件任意修改。IEEE引入了64比特MAC。

3.网络层,涉及到IPV4。它在链路层基础上提供一套逻辑地址的基础设施。这样主机可以更容易地更换,主机群可以划分为子网,在两个遥远的子网主机,可以使用不同的链路层协议和物理介质相互发送信息。

IPV4,互联网协议第四版。定义了一个为每台主机单独标识的逻辑寻址系统。一个定义地址空间的逻辑分段作为物理子网的子网系统,一个在子网之间转发数据的路由系统。

IPV4的核心是IP地址。进而定义IPv4数据包的结构。IPv4数据包包括包头和数据,包头由实现网络层功能所必需的数据组成,数据包括所需要的传输的上层数据。

这篇关于《网络多人游戏 构架与编程》 第二章 互联网 Part1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1068188

相关文章

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

Go语言数据库编程GORM 的基本使用详解

《Go语言数据库编程GORM的基本使用详解》GORM是Go语言流行的ORM框架,封装database/sql,支持自动迁移、关联、事务等,提供CRUD、条件查询、钩子函数、日志等功能,简化数据库操作... 目录一、安装与初始化1. 安装 GORM 及数据库驱动2. 建立数据库连接二、定义模型结构体三、自动迁

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与

Python 异步编程 asyncio简介及基本用法

《Python异步编程asyncio简介及基本用法》asyncio是Python的一个库,用于编写并发代码,使用协程、任务和Futures来处理I/O密集型和高延迟操作,本文给大家介绍Python... 目录1、asyncio是什么IO密集型任务特征2、怎么用1、基本用法2、关键字 async1、async

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

Java并发编程之如何优雅关闭钩子Shutdown Hook

《Java并发编程之如何优雅关闭钩子ShutdownHook》这篇文章主要为大家详细介绍了Java如何实现优雅关闭钩子ShutdownHook,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 目录关闭钩子简介关闭钩子应用场景数据库连接实战演示使用关闭钩子的注意事项开源框架中的关闭钩子机制1.

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义