网络协议与层次划分:探索计算机网络体系结构

news2025/1/11 0:11:06


✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭
~✨✨

🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。

我是Srlua小谢,在这里我会分享我的知识和经验。🎥

希望在这里,我们能一起探索IT世界的奥妙,提升我们的技能。🔮

记得先点赞👍后阅读哦~ 👏👏

📘📚 所属专栏:计算机网络

欢迎访问我的主页:Srlua小谢 获取更多信息和资源。✨✨🌙🌙

目录

协议与划分层次

网络协议的三个组成要素

协议的两种形式

层次式协议结构

划分层次的概念举例

两个主机交换文件

再设计一个通信服务模块

再设计一个网络接入模块

分层的好处与缺点

好处

缺点

层数多少要适当

各层完成的主要功能

差错控制:

流量控制:

分段和重装:

复用和分用:

连接建立和释放:

计算机网络的体系结构

具有五层协议的体系结构

主机1向主机2发送数据流程(图解)

实体、协议、服务和服务访问点

协议和服务在概念上是不一样的

复杂的协议

TCP/IP 的体系结构

​TCP/IP 体系结构的另一种表示方法


协议与划分层次

计算机网络中的数据交换必须遵守事先约定好的规则。

这些规则明确规定了所交换的数据的格式以及有关的同步问题(同步含有时序的意思)。

网络协议(network protocol),简称为协议是为进行网络中的数据交换而建立的规则、标准或约定。

开始之前可以先大概了解一下计算机网络中的网络基础与通信原理,链接如下:

网络基础与通信原理:构建数字世界的框架-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/Srlua/article/details/136201056


网络协议的三个组成要素

  • 语法:数据与控制信息的结构或格式
  • 语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
  • 同步:事件实现顺序的详细说明。

由此可见,网络协议是计算机网络的不可缺少的组成部分。


协议的两种形式

  • 一种是使用便于人来阅读和理解的文字描述。
  • 另一种是使用让计算机能够理解的程序代码。

这两种不同形式的协议都必须能够对网络上信息交换过程做出精确的解释。


层次式协议结构

ARPANET的研制经验表明,对于非常复杂的计算机网络协议,其结构应该是层次式的。


划分层次的概念举例

主机 1向主机 2 通过网络发送文件。可以将要做的工作进行如下的划分:

第一类工作与传送文件直接有关。

  • 确信对方已做好接收和存储文件的准备。
  • 双方已协调好一致的文件格式。

两个主机将文件传送模块作为最高的一层,剩下的工作由下面的模块负责。


两个主机交换文件

再设计一个通信服务模块

再设计一个网络接入模块

网络接入模块负责做与网络接口细节有关的工作,例如:规定传输的帧格式,帧的最大长度等。


分层的好处与缺点

好处

  • 各层之间是独立的。
  • 灵活性好。
  • 结构上可分割开。
  • 易于实现和维护

缺点

  • 降低效率。
  • 有些功能会在不同的层次中重复出现,因而产生了额外开销能促进标准化工作。

层数多少要适当

  • 层数太少,就会使每一层的协议太复杂。
  • 层数太多,又会在描述和综合各层功能的系统工程任务时遇到较多的困难。

各层完成的主要功能

差错控制:

使相应层次对等方的通信更加可靠。

流量控制:

发送端的发送速率必须使接收端来得及接收,不要太快。

分段和重装:

发送端将要发送的数据块划分为更小的单位,在接收端将其还原。

复用和分用:

发送端几个高层会话复用一条低层的连接,在接收端再进行分用。

连接建立和释放:

交换数据前先建立一条逻辑连接,数据传送结束后释放连接。


计算机网络的体系结构

计算机网络的体系结构(architecture)计算机网络的各层及其协议的集合

体系结构就是这个计算机网络及其部件所应完成的功能的精确定义。

实现(implementation)是遵循这种体系结构的前提下用何种硬件或软件完成这些功能的问题。

体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。

  • OSI的七层协议体系结构的概念清楚,理论也较完整,但它既复杂又不实用
  • TCP/IP 是四层体系结构:应用层、运输层、网际层和网络接口层。但最下面的网络接口层并没有具体内容。

因此往往采取折中的办法,即综合 OSI和TCP/IP 的优点,采用一种只有五层协议的体系结构

具有五层协议的体系结构

主机1向主机2发送数据流程(图解)

 

OSI参考模型把对等层次之间传送的数据单位称为该层的协议数据单元 PDU(ProtocolDataUnit)。这个名词现已被许多非OSI标准采用。

任何两个同样的层次把数据(即数据单元加上控制信息)通过水平虚线直接传递给对方。这就是所谓的“对等层”(peer layers)之间的通信。

各层协议实际上就是在各个对等层之间传递数据时的各项规定。


实体、协议、服务和服务访问点

实体(entity)表示任何可发送或接收信息的硬件或软件进程。

协议是控制两个对等实体进行通信的规则的集合。

在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。

要实现本层协议,还需要使用下层所提供的服务。


协议和服务在概念上是不一样的

协议的实现保证了能够向上一层提供服务。

本层的服务用户只能看见服务而无法看见下面的协议。即下面的协议对上面的服务用户是透明的。

协议是“水平的”即协议是控制对等实体之间通信的规则。

服务是“垂直的”即服务是由下层向上层通过层间接口提供的。


复杂的协议

协议必须把所有不利的条件事先都估计到,而不能假定一切都是正常的和非常理想的。

看一个计算机网络协议是否正确,不能光看在正常情况下是否正确,还必须非常仔细地检查这个协议能否应付各种异常情况


TCP/IP 的体系结构

TCP/IP 体系结构的另一种表示方法

实际上,现在的互联网使用的 TCP/IP 体系结构有时已经发生了演变,即某些应用程序可以直接使用IP层,或甚至直接使用最下面的网络接口层。

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

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

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

相关文章

关于继承是怎么样的?那当然是很好理解之

本文描述了关于继承的大部分知识,但是并不全,每篇博客之间的知识都有互串,所以需要把几篇文章合起来看,学会融会贯通! 温馨提示:使用PC端观看,效果更佳! 目录 1.继承是什么 2.什…

FREERTOS任务通知

从 v8.2.0 版本开始,FreeRTOS 新增了任务通知(Task Notifictions)这个功能,可以使用任务通知来代替信号量、消息队列、事件标志组等这些东西。使用任务通知的话效率会更高。 有个疑惑: 队列是两个互通消息的任务之外的一个特性,而…

基于springboot+vue的中山社区医疗综合服务平台

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

Vue.js+SpringBoot开发创意工坊双创管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 管理员端2.2 Web 端2.3 移动端 三、系统展示四、核心代码4.1 查询项目4.2 移动端新增团队4.3 查询讲座4.4 讲座收藏4.5 小程序登录 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的创意工坊双创管理…

【机器学习】科学库使用第2篇:机器学习概述,学习目标【附代码文档】

机器学习(科学计算库)完整教程(附代码资料)主要内容讲述:机器学习(常用科学计算库的使用)基础定位、目标,机器学习概述定位,目标,学习目标,学习目标。机器学习概述,1.3 人…

计算机设计大赛 题目: 基于深度学习的疲劳驾驶检测 深度学习

文章目录 0 前言1 课题背景2 实现目标3 当前市面上疲劳驾驶检测的方法4 相关数据集5 基于头部姿态的驾驶疲劳检测5.1 如何确定疲劳状态5.2 算法步骤5.3 打瞌睡判断 6 基于CNN与SVM的疲劳检测方法6.1 网络结构6.2 疲劳图像分类训练6.3 训练结果 7 最后 0 前言 🔥 优…

初识HOOK框架frida

hook是什么 hook框架是一种技术,用于在运行时拦截和修改应用程序的行为,通过hook,可以劫持应用程序的方法调用、修改参数、篡改返回值等,以达到对应用程序的修改、增强或调试的目的。 常见的hook框架有哪些 Xposed Framework&am…

算法体系-11 第十一节:二叉树基本算法(上)

一 两链表相交 1.1 题目描述 给定两个可能有环也可能无环的单链表,头节点head1和head2。请实现一个函数,如果两个链表相交,请返回相交的 第一个节点。如果不相交,返回null 【要求】 如果两个链表长度之和为N,时间复杂…

什么是GPU云服务器?2024腾讯云GPU云服务器全解析!

腾讯云GPU服务器是提供GPU算力的弹性计算服务,腾讯云GPU服务器具有超强的并行计算能力,可用于深度学习训练、科学计算、图形图像处理、视频编解码等场景,腾讯云百科txybk.com整理腾讯云GPU服务器租用价格表、GPU实例优势、GPU解决方案、GPU软…

名词【语法笔记】

1.名词分为几大类 2.每一类,又有几个小类,以及所需要注意什么

python中字典相关知识点总结

1.字典的定义 字典:在Python中,字典是一系列键-值对。每个键都与一个值相关联,程序员可以通过键来访问与之相关联的值。 实际举例: student{name:xincun,age:18} 通过实例我们可以发现,键-值对是两个相关联的值。指…

3.20作业

1.创建一个工人信息库,包含工号(主键),姓名,年龄,薪资 CREATE TABLE work (id int, name char, age int,money float); 2.添加三条工人信息(可以完整信息,也可以非完整信息&#xff…

Twincat实现电机控制

不仅是控制系统的核心部分,而且能够将任何基于PC的系统转换为一个带有PLC、NC、CNC和机器人实时操作系统的实时控制系统。TwinCAT软件在工业自动化领域具有广泛的应用,特别是在机器人关节电机控制方面!!! 在机器人关节电机控制方面,TwinCAT通…

【C语言基础篇】字符串处理函数(二)strcpy的介绍及模拟实现

目录 一、strcpy介绍 函数原型: 函数功能: 函数参数: 函数返回值: 二、strcpy模拟实现 代码: 测试: 个人主页: 倔强的石头的博客 系列专栏 :C语言指南 C语言刷题系列…

JeePlus低代码开发平台存在SQL注入漏洞

漏洞描述 JeePlus低代码开发平台存在SQL注入漏洞 fofa语句 app"JeePlus" 漏洞复现 打开页面 构造payload GET /a/sys/user/validateMobile?mobile1%27and1%3D%28updatexml%281%2Cconcat%280x7e%2C%28selectmd5%281%29%29%2C0x7e%29%2C1%29%29and%271%27%3D%271…

六、循环结构

在python当中有两类循环结构:for循环和while循环 一、遍历for循环 for循环首先判断遍历对象中是否有元素,在依次遍历 for循环常与range()函数使用 for i in range(1,10,):#range()函数依次遍历1~10但不包括10print(i,end ) p…

账号+密码+图片验证码认证

账号密码图片验证码认证 实现步骤 实现账号密码认证,执行流程如下 第一步: 对于验证码服务工程的生成验证码图片的接口在网关处需要放行,否则页面无法获取生成的验证码图片 /**临时放行所有请求 /auth/**认证服务地址 /content/open/**内容管理公开访问文件接口 …

【计算机视觉】Gaussian Splatting源码解读补充(二)

第一部分 目录 三、前向传播(渲染):submodules/diff-gaussian-rasterization/cuda_rasterizer/forward.cu预备知识:CUDA编程基础 三、前向传播(渲染):submodules/diff-gaussian-rasterization/c…

软件工程导论画图题汇总:期末+复试

文章目录 一、数据模型:实体联系图(E-R图)二、行为模型:状态转换图三、功能模型:数据流图四、数据字典五、系统流程图六、层次图七、HIPO图八、结构图九、程序流程图十、盒图十一、PAD图十二、判定表、判定树 一、数据…

Vue2(四):Vue监测数据的原理

一、先来看一个问题 添加一个按钮点击更新马冬梅的信息&#xff1a; <button click"gengxin">点击更新马冬梅的信息</button> methods:{gengxin(){this.person[1].name马老师,this.person[1].age50,this.person[1].sex男}} 下面这种方式就不能奏效&a…