IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算机网络 -> 正文阅读

[网络协议]计算机网络

计算机网络

一、计算机网络概述

1.1 概念、组成、功能和分类

1. 计算机网络的概念

计算机网络:是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。

2. 计算机网络的功能

  • **$\textcolor{Red}{数据通信} $**?(连通性,传邮件、传文件等)
  • $\textcolor{Red}{资源共享} $(硬件 eg:打印机、软件、数据)
  • 分布式处理(多台计算机各自承担同一工作任务的不同部分 eg: H a d o o p 平 台 \textcolor{RedOrange}{Hadoop平台} Hadoop?)
  • 提高可靠性(eg:一台电脑宕机,还可以使用替代机继续工作)
  • 负载均衡

3. 计算机网络的组成

  1. 组成部分:硬件(eg:主机(端系统)、链路(双绞线、光纤等)、通信设备(路由器、交换机等))、软件、$\textcolor{Red}{协议} $。

  2. 工作方式:

    • 边缘部分 用户直接使用(C/S方式、P2P方式),eg:主机等
    • 核心部分 为边缘部分服务,eg:网络、路由器等

    image-20220217174730175

  3. 功能组成

    • 通信子网 实现 数 据 通 信 \textcolor{Green}{数据通信} ?
    • 资源子网 实现 资 源 共 享 \textcolor{Green}{资源共享} ??/数据处理

    image-20220217180009069

4. 计算机网络的分类

  1. 按**$\textcolor{Red}{分布范围分} $**

    image-20220218152651535

  2. 按使用者分

    • 公用网 image-20220218152726779
    • 专用网 image-20220218152740521
  3. 按交接技术分 电路交换 报文交换 分组交换

  4. 按$\textcolor{Red}{拓扑结构分} $ eg:因特网使用的是网状结构

    image-20220218152912459

  5. 按传输技术分

    • 广播式网络 共享公共通信网络

    • 点对点网络 使用分组存储转发路由选择机制

1.2 标准化工作及相关组织(了解即可)

1. 标准化工作

  1. 标准的分类

    • 法定标准 由权威机构制定的正式的、合法的标准 eg:$\textcolor{Red}{OSI} $
    • 事实标准 某些公司的产品在竞争中占据了主流,时间长了,这些产品中的协议和技术就成了标准 eg:$\textcolor{Red}{TCP/IP} $?

    image-20220218155446664

2. 标准化工作的相关组织

image-20220218155609222

1.3 计算机网络的性能指标(速率、带宽、吞吐量)——速度有关

1. 速率

? 速率即J数据率或称数据传输率比特率

? 比特:表象形式—>1/0 单位—>位

  1. 概念:连接在计算机网络上的主机在数字信道上传送数据位数的速率

  2. 单位:b/s, kb/s, Mb/s, Gb/s, Tb/s

    image-20220218161359457

  3. 换算:

    image-20220218161950856

2. 带宽

  1. 概念:

    • 原指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)。
    • 计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。单位是“比特每秒”,b/s,kb/s,Mb/s,Gb/s 。

    image-20220221172905951

  2. 案例:

    image-20220221174805691

3. 吞吐量

  1. 概念:

    • 表示在单位时间内通过**某个网络(或信道、接口)**的数据量。单位b/s, kb/s,Mb/s等。
    • 吞吐量受网络的带宽或网络的额定速率的限制。
  2. 案例:

    image-20220222101609279

1.4 计算机网络的性能指标(时延、时延带宽积、RTT)——时间有关

1. 时延(重点:传输时延、传播时延)

  1. 概念:指数据(报文/分组/比特流)从网络(或链路)的一端传送到另一端所需的时间。也叫延迟迟延。单位是s。

  2. 案例:(注意:发送速率加快不会影响传播速率和传播时延,只会影响发送时延。)

    image-20220222163510325

2. 时延带宽积

  1. 计算公式:
    image-20220307160445806

  2. 案例:时延带宽积又称为以比特为单位的链路长度。即“某段链路现在有多少比特”。

    image-20220307160729981

    ? image-20220307160911758

3. 往返时延RTT

  1. 概念:从发送方发送数据开始,到发送方收到接收方的确认(接收方收到数据后立即发送确认),总共经历的时延。

    注意:RTT不包括传输时延,也就是不包括所有信息从主机放到信道上的这一段时间。

    image-20220307161419158

1.5 计算机网络的性能指标(利用率)

  1. 利用率分为:

    • 信道利用率 有数据通过时间/(有+无)数据通过时间
    • 网络利用率 信道利用率加权平均值
  2. 时延与利用率的函数关系:

    image-20220307161919783

2.1 分层结构、协议、接口、服务

1. 为什么要分层?

为了解决以下一系列问题:

image-20220307163110416

? 发送文件前要完成的工作:
? (1)发起通信的计算机必须将数据通信的通路进行激活。

? (2)要告诉网络如何识别目的主机。

? (3)发起通信的计算机要查明目的主机是否开机,并且与网络连接正常。

? (4)发起通信的计算机要弄清楚,对方计算机中文件管理程序是否已经做好准备工作。

? (5)确保差错和意外可以解决。

? 。。。。。。

2. 如何分层?

  1. 分层的基本原则

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

    image-20220307163724025

3. 正式认识分层结构

image-20220309104613952

  1. 实体:第n层中的活动元素称为 n 层 实 体 \textcolor{red}{n层实体} n。同一层的实体叫 对 等 实 体 \textcolor{red}{对等实体}

  2. 协议:为进行网络中的 对 等 实 体 \textcolor{red}{对等实体} ?数据交换而建立的规则、标准或约定称为网络协议。【水平】

    协议大三要素:

    • 语法:规定传输数据的格式
    • 语义:规定所要完成的功能
    • 同步:规定各种操作的顺序
  3. 接口(访问服务点SAP):上层使用下层服务的入口。

  4. 服务:下层为相邻上层提供的功能调用。【垂直】

4. 概念总结

  1. 网络体系结构是从 功 能 \textcolor{red}{功能} 上描述计算机网络结构。

  2. 计算机网络体系结构简称网络体系结构是 分 层 结 构 \textcolor{red}{分层结构}

  3. 每层遵循某个/些 网 络 协 议 \textcolor{red}{网络协议} 以完成本层功能。

  4. 计 算 机 网 络 体 系 结 构 \textcolor{red}{计算机网络体系结构} 是计算机网络的 各 层 及 其 协 议 \textcolor{red}{各层及其协议} 的集合。

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

  6. 仅仅在 相 邻 层 间 有 接 口 \textcolor{red}{相邻层间有接口} ,且所提供服务的具体实现细节对上一层完全屏蔽。

  7. 体系结构是 抽 象 \textcolor{red}{抽象} ?的,而实现是指能运行的一些软件和硬件。

2.2 OSI参考模型概念(最重要模型也是以下另外两个模型的基础)

1. 计算机网络分层结构

image-20220309111311513

ISO/OSI参考模型由来:国际标准化组织(ISO)于1984年提出开放系统互连(OSI)参考模型。但是!理论成功,市场失败。

ISO/OSI参考模型提出来的目的:支持 异 构 网 络 系 统 \textcolor{red}{异构网络系统} 的互联互通。

2. ISO/OSI参考模型

image-20220309112207327

3. ISO/OSI参考模型解释通信过程

image-20220309112825594

实际每一层做了哪些工作呢?(打包到拆包的过程)

image-20220309113141577

2.3 OSI参考模型中各层的基础介绍

  1. 应用层:所有能和用户交互产生网络流量的程序。

    典型的应用层服务:

    • 文件传输(FTP)
    • 电子邮件(SMTP)
    • 万维网(HTTP)
  2. 表示层:用于处理在两个通信系统中交换信息的表示方式(语法和语义)。

    主要功能:

    • 数据格式变换(类似于翻译官)
    • 数据加密解密
    • 数据压缩和恢复
  3. 会话层:向表示层实体/用户进程提供 建 立 连 接 \textcolor{red}{建立连接} 并在连接上 有 序 \textcolor{red}{有序} 传 输 \textcolor{red}{传输} 数据。这是会话,也是 建 立 同 步 \textcolor{red}{建立同步} (SYN)。

    主要功能:

    • 建立、管理、终止会话
    • 使用校验点可使会话在通信失效时从 校 验 点 / 同 步 点 \textcolor{green}{校验点/同步点} /继续恢复通信,实现数据同步。(适用于传输大文件,eg:当文件传输过程中,传输失效了,重新建立连接后可以从刚才的位置继续传输,而不用从头开始)
  4. 传输层:负责主机中 两 个 进 程 \textcolor{red}{两个进程} ??的通信,即 端 到 端 \textcolor{red}{端到端} ??的通信。传输单位是报文段或用户数据报。

    ** 概 念 补 充 : \textcolor{VioletRed}{概念补充:} **??

    • 报文(message):将位于 应 用 层 \textcolor{red}{应用层} 的信息分组称为报文。报文是网络中交换与传输的数据单元,也是网络传输的单元。报文包含了将要发送的完整的数据信息,其长短不需一致。报文在传输过程中会不断地封装成分组、包、帧来传输,封装的方式就是添加一些控制信息组成的首部,那些就是 报 文 头 \textcolor{red}{报文头} ?。
    • 报文段(segment):通常是指起始点和目的地都是 传 输 层 \textcolor{red}{传输层} ???的信息单元。
    • 数据报(datagram):面向无连接的数据传输,其工作过程类似于报文交换。采用数据报方式传输时,被传输的分组称为数据报。通常是指起始点和目的地都使用无连接网络服务的 网 络 层 \textcolor{red}{网络层} ?的信息单元。(指IP数据报)

    主要功能:(为方便记忆,记 可差留用

    • 可靠传输、不可靠传输
    • 差错控制
    • 流量控制
    • 复用分用
      • 复用:多个应用层进程可同时使用下面运输层的服务。
      • 分用:运输层把收到的信息分别交付给上面应用层中相应的进程。
  5. 网络层:主要任务是把 分 组 \textcolor{red}{分组} 从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层传输单位是 数 据 报 \textcolor{red}{数据报}

    概 念 补 充 : \textcolor{VioletRed}{概念补充:} ?

    • 分组/包(packet):分组是在网络中传输的二进制格式的单元,为了提供通信性能和可靠性,每个用户发送的数据会被分成多个更小的部分。在每个部分的前面加上一些必要的控制信息组成的首部,有时也会加上尾部,就构成了一个分组。它的起始和目的地是 网 络 层 \textcolor{red}{网络层} ??。(分组和数据报相当于是父子关系,当数据报过长时会被切断分组传输)

    主要功能:

    • 路由选择 选 择 最 佳 路 径 \textcolor{red}{选择最佳路径}
    • 流量控制
    • 差错控制
    • 拥塞控制(若所有结点都来不及接受分组,而要丢弃大量分组的话,网络就处于 拥 塞 \textcolor{green}{拥塞} ?状态。因此要采取一定措施,缓解这种拥塞。)

    image-20220310110309196

  6. 数据链路层:主要任务是把网络层传下来的数据报 组 装 成 帧 \textcolor{red}{组装成帧} ???。数据链路层/链路层的传输单位是** 帧 \textcolor{red}{帧} **???。

    概 念 补 充 : \textcolor{VioletRed}{概念补充:}

    • 帧(frame):帧是 数 据 链 路 层 \textcolor{red}{数据链路层} ?的传输单元。它将上层传入的数据添加一个头部和尾部,组成了帧。它的起始点和目的点都是数据链路层。

    主要功能:

    • 成帧(定义帧的开始和结束)
    • 差错控制 帧 错 + 位 错 \textcolor{red}{帧错+位错} +
    • 流量控制
    • 访问(接入)控制 控 制 对 信 道 的 访 问 \textcolor{red}{控制对信道的访问} 访
  7. 物理层:主要任务是在 物 理 媒 体 \textcolor{red}{物理媒体} 上实现比特流的 透 明 传 输 \textcolor{red}{透明传输} 。物理层传输单位是** 比 特 \textcolor{red}{比特} **。

    概 念 补 充 : \textcolor{VioletRed}{概念补充:}

    • 透明传输:指不管所传数据是什么样的比特组合,都应当能够在链路上传送。

    主要功能:

    • 定义接口特性(例如插头接口是双头还是三头)
    • 定义传输模式 单 工 、 半 双 工 、 双 工 \textcolor{red}{单工、半双工、双工}
    • 定于传输速率
    • 比特同步
    • 比特编码

2.4 TCP/IP参考模型

  1. TCP/IP参考模型:

    image-20220322101140263

  2. OSI模型和TCP/IP模型的区别

    • 相同点:

      • 都分层
      • 都是基于独立的协议栈的概念
      • 可以实现异构网络的互连
    • 不同点:

      • OSI定义三点:服务、协议、接口

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

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

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

        image-20220322160028083

2.5 5层参考模型(综合了OSI和TCP/IP的优点)

image-20220322160420725

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2022-03-30 19:06:09  更:2022-03-30 19:08:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:22:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码