【王道计算机网络笔记】计算机网络体系结构-计算机网络体系结构与参考模型

news2024/11/24 2:05:35

文章目录

    • 计算机网络分层结构
    • OSI参考模型
    • TCP/IP参考模型
    • 5层参考模型
      • 5层参考模型的数据封装与解封装

计算机网络分层结构

我们把计算机网络的各层及其协议的集合称为网络的体系结构(Architecture)。换言之,计算机网络的体系结构就是这个计算机网络及其所应完成的功能的精确定义,它是计算机网络中的层次、各层的协议及层间接口的集合。
体系结构是抽象的,而实现是指能运行的一些软件和硬件

网络体系结构是从功能上描述计算机网络结构

计算机网络体系结构简称网络体系结构是分层结构。分层的基本原则

  1. 每层之间相互独立,每层只实现一种相对独立的功能
  2. 每层之间界面自然清晰,易于理解,相互交流尽可能少
  3. 结构上可分割开。每层都采用最合适的技术来实现
  4. 保持下层对上层的独立性上层单向使用下层提供的服务
  5. 整个分层结构应该能促进标准化工作

每层遵循某个/些网络协议以完成本层功能

![[附件/Pasted image 20221119105058.png|500]]

  • 实体:第n层中活动元素称为n层实体。同一层的实体叫做对等实体。例如主机B L5 data可以称作5层实体,对应的主机A L5 data可以称作对等实体
  • 协议:为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议【水平】
    协议的三大要素,这里以比特序列01010001111000为例
    • 语法:规定传输数据的格式,即数据按照0/1这种数字形式来传输,比特序列从那里分割,哪里启示、结束都是语法规定的内容
    • 语义:规定所要完成的功能,即比特序列根据语法分割以后变成好几段,每个分段的意思,能实现什么功能就是语义的作用
    • 同步:规定各种操作的顺序,即规定哪个数据报先发,哪个后发
  • 接口(访问服务点SAP):上层使用下层服务的入口
  • 服务:下层为相邻上层提供的功能调用【垂直】

仅仅在相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽

![[附件/Pasted image 20221119110640.png|300]]

  • SDU服务数据单元:为完成用户所要求的的功能而传送的数据。也就是每一层要传输的数据,就是有用的那些部分
  • PCI协议控制信息:控制协议操作的信息。可以理解成一些控制信息
  • PDU协议数据单元:对等层次之间传送的数据单元
    n − P C I + n − S D U = n − P D U = ( n − 1 ) − S D U n-PCI \quad + \quad n-SDU=n-PDU=(n-1)-SDU nPCI+nSDU=nPDU=(n1)SDU

第n层在向n+1层提供服务时,此服务不仅包含第n层本身的功能,还包含由下层服务提供的功能

OSI参考模型

计 算 机 网 络 分 层 结 构 { 7 层 O S I 参 考 模 型 , 法 定 标 准 4 层 T C P / I P 参 考 模 型 , 事 实 标 准 ⇒ 5 层 的 体 系 结 构 计算机网络分层结构 \left\{\begin{aligned}&7层OSI参考模型,法定标准\\&4层TCP/IP参考模型,事实标准\end{aligned}\right.\Rightarrow 5层的体系结构 {7OSI,4TCP/IP,5
为了支持异构网络系统的互联互通(不同公司提出不同网络体系结构),国际标准化组织(ISO)与1984年提出开发系统互连(OSI)参考模型
![[附件/Pasted image 20221119171137.png|300]]

![[附件/Pasted image 20221119172414.png|500]]

上面四层是端到端的通信(运行在两个主机内进程的通信),下面三层是点到点的通信(只管下一步到哪里,不管最后到哪里)
![[附件/Pasted image 20221119173002.png|500]]

因为对等实体遵从相同的协议,因此知道应该加上或去掉哪些数据

  • 应用层:用户与网络的界面,所有能和洪湖交互产生网络流量的程序(记事本等不联网能用的不算)
    典型应用层服务:文件传输(FTP),电子邮件(SMTP),万维网(HTTP)……

  • 表示层:用于处理两个通信系统中交换信息的表示方式(语法和语义)

    • 功能一:数据格式变换,例如把比特流转换成图片JPG格式
    • 功能二:数据加密和解密,例如微信支付密码的加密和解密
    • 功能三:数据的压缩和恢复,例如图片本身很大,通过压缩变小再放到链路上传输

    没有典型单独的协议

  • 会话层:向表示层实体/用户进程提供建立连接并在连接上有序地传输数据。这就是会话,也是建立同步(SYN)
    例如有一台电脑,打开了百度网页,然后放到后台,换个网页开始看电影,现在这个电脑已经和这两个窗口建立起了同步,但是还没有进行数据的传输。这是调整电影播放速率,受到影响的是电影所在的网页,而不是百度网页
    会话之间是彼此独立,而不互相影响

    • 功能一:建立、管理、终止会话
    • 功能二:使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信、实现数据同步
      适用于传输大文件

    (不重要)主要协议:ADSP,ASP

  • 传输层:负责主机中两个进程的通信,即端到端的通信。传输单位是报文段或用户数据报

    • 功能一:可靠传输、不可靠传输
      可靠传输,一种基于确认机制的传输。例如发一个文件,把它切成报文段,一个一个放到链路上传输,传输到接收端,接收端每收到一个报文段都会返回一个确认的信息,只有发送端收到了确认的信息才会发下一个报文段;如果没有收到确认信息,会再发一次报文段,直到收到这个报文段的确认为止,才能继续往下发送报文段
      不可靠传输,不需要建立连接,不管会不会丢,直接发送数据包就行。通常用于发送一些比较小的数据
    • 功能二:差错控制,当传送的报文段失去了,顺序错了,传输层就会纠正这些错误
    • 功能三:流量控制,控制发送端的速度,例如发送端发送了大量数据,但接收方硬件不好,接收的很慢,这是发送端就会被控制减缓发送速度
    • 功能四:复用分用
      复用:多个应用层进程可同时使用下面运输层的服务
      分用:运输层把收到的信息分别交付给上面应用层中相应的进程
      例如,发送的同时使用QQ和微信向接收端发送消息,QQ端口号为1,微信端口号为2,接收端收到报文段,发现端口号为1,则分给QQ,端口号为2,则分给微信

    主要协议:TCP、UDP

  • 网络层(IP层):主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层传输单位是数据报
    如果数据报过长,就可能被分割成多个分组,然后放到链路上传递

    • 功能一:路由选择,就是选择最佳路径例如发送端发送一个数据报给接收端,但从发送端到接收端有多条路径,网络层就会通过算法选择最佳路径
      ![[附件/Pasted image 20221119211952.png|300]]

    • 功能二:流量控制,协调发送端和接收端速度问题。类似传输层的流量控制

    • 功能三:差错控制,两节点之间约定一些规则,接收方根据规则,检查收到的分组是否有错误,如果能纠错就纠错,如果不能纠错就扔掉,保证传输层提交的内容都是正确的

    • 功能四:拥塞控制。相交于流量控制,拥塞控制是对于全局的速度控制,如果所有节点都来不及接收分度,而要丢弃大量分组的话,网络就会处于拥塞状态。因此要采取一定措施,缓解这种拥塞

    主要协议:IP、IPX、ICMP、IGMP、ARP、RARP、OSPF

  • 数据链路层:主要任务是把网络层传下来的数据报组装成帧。数据链路层/链路层的传输单位是帧

    • 功能一:成帧(定义帧的开始和结束),数据报组装成帧以后会形成一个比特流序列,这时候需要定义帧的开始和结束,就是需要定义01的组合作为开始和结束的标志。只要这样定义好了,在接收端接收到一个帧的时候获得里面的数据
    • 功能二:差错控制,可以检错也可以纠错,错误分为帧错和位错
    • 功能三:流量控制,类似上面的
    • 功能四:访问(接入)控制,主要是对信道访问的控制。例如有四台主机连在一个物理介值上,数据链路层就要控制哪台主机当前可以发送信息,即可以使用共享信道(广播室网络当中,同时只能有一个主机发送信息,其他主机都在监听的状态)

    主要协议:SDLC、HDLC、PPP、STP

  • 物理层:主要任务是在物理媒体上实现比特流的透明传输(把比特流转成电信号并放到链路上传输,没有其他处理)。传输单位是比特
    透明传输:指不管所传数据是什么样的比特组合,都应当能够在链路上传送

    • 功能一:定义接口特性,例如确定连接电缆的插头有多少根引脚,每根引脚如果连接……
    • 功能二:定义传输模式
      单工:同一时间两方,只有一方可以发送,另一方只能接收,并且发送端和接收端是确认的,不能改变
      半双工:同一时间两方,只有一方可以发送,另一方只能接收,但发送端和接收端不确定,两方都可以
      双工:同一时间两方可以同时发送
    • 功能三:定义传输速率
    • 功能四:比特同步
    • 功能五:比特编码

    主要协议:Rj45、802.3

TCP/IP参考模型

![[附件/Pasted image 20221120111304.png|500]]

OSI参考模型与TCP/IP参考模型

  • 相同点
    • 都分层
    • 基于独立的协议栈的概念
    • 可以实现异构网络互联(不同厂家生成的设备联系起来)
  • 不同点
    • OSI定义三点:服务、协议、接口

    • OSI先出现,参考模型先于协议发明,不偏向特定协议

    • TCP/IP设计之初就考虑到异构网互联问题,把IP作为重要层次

    • ISO/OSI参考模型在网络层采用无连接+面向连接,传输层采用面向连接;TCP/IP模型网络层采用无连接,传输层采用无连接+面向连接

      面向连接分为三个阶段,第一是建立连接,在此阶段,发出一个建立连接的请求。只有在连接成功建立之后,才能开始数据传输,这是第二阶段接着,当数据传输完毕,必须释放连接。而面向
      无连接没有这么多阶段,它直接进行数据传输。

5层参考模型

综合了OSI和TCP/IP的优点
![[附件/Pasted image 20221120151810.png|250]]
应用层,支持各种网络应用,FTP、SMTP、HTTP
传输层,进程-进程的数据传输,TCP、UDP
网络层,源主机到目的主机的数据分组路由与分发,IP、ICMP、OSPF等
数据链路层:把网络层传下来的数据报组装成帧,Ethernet、PPP
物理层,比特传输

5层参考模型的数据封装与解封装

![[附件/Pasted image 20221120152800.png|500]]

来自主机的数据,应用层会加一定的控制信息,形成报文;将报文切分成段,放到传输层上传输,并加上传输层的控制协议就形成了报文段;报文段在网络层加上网络层的控制协议就形成了数据报,数据报如果过长会对其进行切分,分成分组;数据报到数据链路层上在首尾加上数据链路层的控制信息,形成帧;帧到物理层被转成比特流

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

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

相关文章

Hash表实现原理

Hash表查找的本质就是:在创建记录表的时候,确定记录的key与其存储地址之间的关系f,当要查找keyk的记录时,通过关系 f 就可得到相应记录的地址而获取记录,从而免去了key的比较过程 我们把这个关系 f 称为Hash 函数&…

1.3 字符编码

文章目录1. 编码2. ASCII 字符集3. 字符编码发展4. Unicode 字符集5. 字符编码5.1 UTF-165.3 UTF-325.3 UTF-86. 文件编码转换7. 乱码问题1. 编码 计算机只能识别高低电平, 将高低电平用数字表示: 0表示低电压, 1表示高电平. 于是就创造出来二进制数, 一个二进制有 0 和 1, 两…

【网络工程】5、路由器介绍及配置实操

接上篇《4、企业级交换机配置》 之前我们通过eNSP完成了一个企业级交换机的配置实例,本篇我们继续来讲解网络设备——路由器的介绍,以及完成路由器的相关配置实操。 当我们申请了一条宽带后,一般都需要一台路由器来进行上网,那么…

SpringBoot项目创建及其核心设计思想

参考了很多相关博客: springboot怎么学? - 知乎 如何解读springboot 中约定大于配置、JPA是什么、咋用_打豆豆。的博客-CSDN博客 SpringBoot约定大于配置到底是什么意思?_zhupanlinch的博客-CSDN博客 SpringBoot约定大于配置的特性解读 & SpringBoot…

胶囊网络深入理解

胶囊网络的概念与理解 胶囊网络概述 人工神经元不应当追求神经元活动中的视角不变性,(使用单一的标量输出来总结一个局部池中的重要特征的检测器的活动)。而应当使用局部的胶囊,这些胶囊对其输入执行一些相当复杂的内部计算。然…

【Java】Java中时间的相关类(Date,SimpleDateFormat)

文章目录Date类SimpleDateFormat类Date类 Date是JDK提供的类,用来描述时间,使用无参构造创建的对象默认表示系统的当前时间,使用有参构造(指定的毫秒值)表示从时间原点(1970年)过了该参数值的时…

08_原始套接字

知识点1【原始套接字概述】 1、UDP封包格式 ​IP封包格式: Ethernet封包格式 TCP封包格式: ICMP封包格式:ping 知识点2【数据包的分析】 案例:网络分析器: 知识点2【混杂模式】接受数据(了解&#x…

win11+WSL2安装visdom

win11WSL2安装visdom环境配置下载visdom小小的修改运行visdom环境配置 Win11WSL2Ubuntu-18.04 下载visdom pip install visdom pip install --upgrade visdom conda install -c conda-forge visdom 小小的修改 \home\grass\miniconda3\envs\torch\lib\python3.8\site-pack…

[一篇读懂]C语言九讲:线性表应用

[一篇读懂]C语言九讲:线性表应用1. 与408关联解析及本节内容介绍1 与408关联解析2 本节内容介绍2. 线性表的顺序表示原理解析1 线性表线性表的定义线性表的特点2 线性表的顺序表示顺序表的定义顺序表优缺点顺序表插入操作顺序表删除操作动态分配3. 顺序表的初始化及…

微服务系列之单体架构

随笔 终于迎来了“微服务、云原生”系列文章,这个系列的文章的更新速度博主无法保证能够每个星期一篇,因为这个系列的难度比以往系列都要高(以往的系列就没有保证一个星期一更)。但是长时间不去写文章,自己可能会慢慢…

Keepalived+LVS部署

目录 一、环境准备 二、实验拓扑 三、部署LVS DR环境 四、LVS服务器配置keepalived 1、安装keepalived 2、修改lvs1服务器keepalived配置 3、修改lvs2服务器keepalived配置 五、客户端测试 1、负责均衡测试 2、LVS服务器高可用测试 一、环境准备 准备4台centos服务器…

学习日记(单元测试、反射、注解、动态代理)

文章目录学习日记(单元测试、反射、注解、动态代理)一、单元测试1. 单元测试实践2. JUnit 常用注解二、反射1. 反射获取类对象2. 反射获取构造器对象3. 反射获取成员变量对象4. 反射获取成员方法对象三、反射的作用举例1. 绕过编译阶段为集合添加数据2. …

基于生物地理学的优化算法(BBO)用于训练多层感知器(MLP)【多种算法进行比较】(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

java中的BigDecimal使用

文章目录1、什么是BigDecimal?2、为什么使用BigDecimal?3、如何使用BigDecimal?(1)BigDecimal初始化赋值(2)加减乘除运算(3)BigDecimal保留两位小数及舍入模式&#xff0…

WFP实现侧边栏导航菜单

菜单导航功能实现,常规的管理系统应该常用,左侧显示菜单条目,点击菜单,右侧切换不同的业务用户控件。 常用菜单可以采用TreeView树形控件特定样式实现 ,本文介绍的是使用ExpanderListView的组合形式实现的导航菜单&am…

算法day24|理论基础77

详细布置 理论基础 什么是回溯法:递归函数下面通常有回溯法 它使用的地方:组合,切割,子集,排列,棋盘问题(N皇后,解数独) 回溯算法的模板: void backtracking(参数)&…

微型计算机基础

微型计算机常用术语 位(bit):计算机所能表示的最基本,最小的数据单元。1个二进制位有两种状态0和1 通常情况下0表示低电平(接地),1表示高电平接电源(VCC) 字节&#xff0…

MATLAB 矩阵处理及多项式计算

一、实验目的 (1)掌握生成特殊矩阵以及矩阵处理的方法 (2)掌握数据统计和分析的方法 (3)掌握多项式的常用计算 二、实验原理与实验设备 原理:计算机编程相关知识技能和MATLAB软件编译环境 …

c++——map和set的封装

注:该封装基于前面博客已实现红黑树,map和set封装并不难,主要还是对红黑树的理解 目录 一. 改造红黑树 1. 改变节点的定义,使用更高维度的泛型 2. 红黑树追加迭代器的实现 1. 红黑树迭代器的构造函数和基本框架 2. begin()和e…

2.4、编码与调制

2.4、编码与调制 在计算机网络中。计算机需要处理和传输用户的文字,图片,音频和视频。它们可以统称为消息。 数据是运送消息的实体。 计算机中的网卡将比特 000 和 111,变换成相应的电信号发送到网线。 也就是说,信号是数据的…