• 计算机网络——组成、分类、性能指标、分层结构



    前言

    本文的主要内容是有关计算机网络组成、分类、性能指标、分层结构方面的一些基础知识,包括计算机网络的概念、功能、组成和分类,计算机网络性能指标中的速率、带宽、吞吐量、时延、时延带宽积、往返时延和利用率,计算机网络的分层结构中的 OSI 参考模型、TCP/IP 参考模型和五层参考模型。


    一、计算机网络的概念、功能、组成和分类

    计算机网络的概念:计算机网络是一个将分散的、具有独立功能的计算机系统(手机端、电脑端等),通过通信设备(交换机、路由器等)与线路连接起来,并由功能完善的软件实现资源共享和信息传递的系统。
    简单总结,计算机网络是互连的自治的(自治指的是无主从关系)计算机集合。
    计算机网络的功能:①数据通信;②资源共享(包括硬件、软件和数据的共享);③分布式处理(多台计算机各自承担同一工作任务的不同部分);④提高可靠性(如果数据传送过程中某个主机线路行不通了,那么就会有替代机帮助完成数据的传送,相当于一个备选方案);⑤负载均衡(分布式处理带来的结果)。
    计算机网络的组成
    ①从组成部分来说,计算机网络可分为硬件、软件和协议。硬件包括主机(端系统)、链路和通信设备(交换机、路由器等);软件就是安装在端系统上的一些应用软件;协议是计算机网络的核心,它是一系列规则和约定的集合,只有有了协议,计算机网络才能安全平稳可靠的发挥功能。
    ②从工作方式来说,计算机网络可分为边缘部分和核心部分。边缘部分是主机存在的部分,它是用户直接使用的,可以实现数据通信和资源共享,端系统间的通信有 C/S (客户服务器)方式和P2P(端到端)方式;核心部分是为边缘部分服务的,包括路由器和大量的网络。
    ③从功能组成来说,计算机网络可分为通信子网和资源子网。通信子网用来实现数据通信;资源子网用来实现资源共享和数据处理。OSI 7层模型中通信子网和资源子网对应的层如下图所示。
    在这里插入图片描述

    计算机网络的分类
    ①按分布范围分为广域网(WAN,Wide Area Network)、城域网(MAN,Metropolis Area Network)、局域网(LAN,Local Area Network)以及个人区域网(PAN,Personal Area Network)。广域网使用的是交换技术,局域网使用的是广播技术。
    ②按使用者分为公用网和专用网。公用网有中国移动、联通、电信等;专用网有军队网、政府网、公安网等。
    ③按交换技术分为电路交换、报文交换和分组交换。
    ④按拓扑结构分为总线型、星型、环型和网状型。网状型结构常用于广域网。
    ⑤按传输技术分为广播式网络和点对点网络。广播式网络共享公共通信信道;点对点网络使用分组存储转发和路由选择机制。


    二、计算机网络的性能指标

    1、速率、带宽、吞吐量

    速率也就是数据率,或者称为数据传输率或比特率,它是连接在计算机网络上的主机在数字信道上传送数据位数的速率。
    单位有:b/s,kb/s,Mb/s,Gb/s,Tb/s
    在速率方面,k、M、G、T之间的换算是 1 0 3 10^3 103,但是在存储方面是以 2 10 2^{10} 210进行换算。
    带宽原本指的是某个信号具有的频带宽度,也就是最高频率与最低频率之差,其单位是赫兹(Hz)。
    计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的最高数据率,单位是比特每秒(b/s)。
    带宽还可理解为网络设备所支持的最高速度。
    下面是一个辅助理解带宽的示意图。
    在这里插入图片描述
    带宽不会影响传播速度,影响的只是在单位时间内往链路中所发送的比特数。
    吞吐量表示在单位时间内通过某个网络、信道或接口的数据量,单位仍然是比特每秒(b/s)。吞吐量受网络带宽或网络的额定速率的限制。
    链路带宽一般是一种理想的状态,不太可能达到。

    2、时延、时延带宽积、往返时延、利用率

    时延指数据(报文/分组/比特流)从网络或者链路的一端传送到另一端所需的时间,也叫作延迟或迟延,单位是秒(s)。
    时延包括发送时延(传输时延)、传播时延、排队时延以及处理时延。
    发送时延是指从发送分组的第一个比特算起,到该分组的最后一个比特发送完毕所需要的时间。一般是从主机发送到信道上耗费的时间。
    发送时延 = 数据长度 信道带宽 \frac{数据长度}{信道带宽} 信道带宽数据长度
    传播时延取决于电磁波传输速度和链路长度,一般是从信道到路由器这段传输距离。
    传播时延 = 信道长度 电磁波在信道上的传播速率 \frac{信道长度}{电磁波在信道上的传播速率} 电磁波在信道上的传播速率信道长度
    排队时延是等待输入或输出链路可用耗费的时间。
    处理时延就是检错、找出口等操作耗费的时间。
    各个时延的简单示意图如下图所示。
    请添加图片描述
    时延带宽积 = 传播时延 × 带宽,其单位是比特。时延带宽积又称为以比特为单位的链路长度,也就是某段链路现在有多少比特,通俗说就是链路中某一刻的容量。时延带宽积的示意图如下图所示。
    在这里插入图片描述
    往返时延(RTT,Round-Trip Time) 指的是从发送方发送数据开始,到发送方收到接收方的确认(接收方接收到第一个数据后立即发送确认,而不是全部接收完才发送确认)总共经历的时延。
    RTT 包括往返传播时延(也就是2倍的传播时延)和末端处理时间。RTT 越大,在收到确认之前可以发送的数据越多。
    利用率这里有信道利用率和网络利用率,信道利用率 = 有数据通过的时间 有数据通过的时间 + 无数据通过的时间 \frac{有数据通过的时间}{有数据通过的时间+无数据通过的时间} 有数据通过的时间+无数据通过的时间有数据通过的时间,而网络利用率就是信道利用率的加权平均值。
    时延和利用率之间的关系图如下图所示。
    在这里插入图片描述
    可以看到,随着利用率的逐渐趋近于1,时延也会急剧增大。可以将链路看作车道,传送的数据看作一辆辆的车,如果车道上车很少,那车道的利用率就比较低,堵车的时间自然不会长,即时延短;反之,如果车道上车很多,那车道的利用率就会很大,堵车的时间自然会长,即时延长。


    三、计算机网络的分层结构

    1、分层结构

    主机之间共享文件时需要完成很多工作,诸如,发起通信的计算机必须将数据通信的通路进行激活;要告诉网络如何识别目的主机;发起通信的计算机要查明目的主机是否开机,并且与网络连接正常;发起通信的计算机要确认对方计算机中文件管理程序是否已经做好准备工作;确保出现的差错和意外可以解决。
    结合上面这个例子,这样一个在我们看来比较简单的工作,计算机却要完成很多工作并确保这个过程不会出错,因此就涉及到分层。
    分层的基本原则
    ①各层之间相互独立,每层只实现一种相对独立的功能;
    ②每层之间界面自然清晰,易于理解,相互交流尽可能少;
    ③结构上可分割开,每层都采用最合适的技术来实现;
    ④保持下层对上层的独立性,上层单向使用下层提供的服务;
    ⑤整个分层结构应该能促进标准化工作。
    一个简单的分层结构如下图所示。
    在这里插入图片描述
    实体:第 n 层中的活动元素称为 n 层实体,同一层的实体叫做对等实体。
    协议:为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议。网络协议是水平的。
    协议有三大要素,即语法、语义和同步。语法规定传输数据的格式;语义规定所要完成的功能;同步规定各种操作的顺序。
    接口:接口也称为访问服务点 SAP,是上层使用下层服务的入口。
    服务:下层为相邻上层提供的功能调用。服务是垂直的。
    将上面图中3、4、5层择出来如下图所示。
    在这里插入图片描述
    SDU (Service Data Unit,服务数据单元)是为完成用户所要求的功能而应传送的数据。
    PCI (Protocol Control Information,协议控制信息)是控制协议操作的信息。
    PDU (Protocol Data Unit,协议数据单元)是对等层次之间传送的数据单位。
    网络体系结构是从功能上描述计算机网络结构的,体系结构是抽象的,而实现是指能运行的一些软件和硬件。
    计算机网络体系结构简称网络体系结构是分层结构,计算机网络体系结构是计算机网络的各层及其协议的集合。
    每层遵循某个或某些网络协议完成本层的功能。第 n 层在向 n+1 层提供服务时,此服务不仅包含第 n 层本身的功能,还包含由下层服务提供的功能。
    接口只在相邻层之间才有,且其所提供服务的具体实现细节对上一层完全屏蔽。
    计算机网络的分层结构有7层的 OSI 参考模型(法定标准)和4层的 TCP/IP 参考模型(事实标准)。

    2、OSI 参考模型

    为了支持异构网络系统的互联互通,国际标准化组织(ISO,International Standardization Organization) 于1984年提出开放系统互连(OSI,Open Systems Interconnection) 参考模型。
    OSI 7层模型前面已经介绍过了,自底向上依次是物理层、数据链路层、网络层、传输层、会话层、表示层以及应用层,通信的简要过程如下图所示。
    请添加图片描述
    上面四层采用端到端的传输方式,下面三层采用点到点的传输方式,且对应层之间的传输都有协议。每层所做的就是在上一层的基础上加上头部,只有数据链路层还加了尾部,如下图所示。
    在这里插入图片描述
    详细介绍一下各层:
    应用层是用户与网络的界面,它是指所有能和用户交互产生网络流量的程序。
    表示层用于处理两个通信系统中交换信息的表示方式,一般包括语法和语义。
    表示层的功能:数据格式变换(不同主机的编码和表示方式可能不一样);数据的加密与解密(对发送方的信息加密,传送到接收方后再解密);数据的压缩与恢复(对发送方的大文件或视频流压缩发送,传送到接收方后再解压缩恢复数据)。
    会话层是向表示层实体或者用户进程提供建立连接并在连接上有序地传输数据,这是建立同步的过程。
    会话层的功能:建立、管理和终止会话;使用校验点可使会话在通信失效时从校验点或者同步点恢复从而继续通信,实现数据同步(比如在大文件传输时,如果断网了,文件停止传输,网络恢复后不会从头开始传,而会从所谓的校验点恢复继续传输)。
    传输层负责主机中两个进程的通信,即端到端的通信,传输单位是报文段或用户数据报。
    传输层的功能:
    ①可靠传输、不可靠传输。可靠传输需要建立连接,确认机制,就是接收方反馈给发送方收到的信号后发送方接着发送。不可靠传输就直接发送,不需要建立连接和确认机制。
    ②差错控制。纠正一些错误,使传输得以继续。
    ③流量控制。发送方的发送能力和接收方的接收能力有差距,因此会适时地调整至相匹配。
    ④复用分用。复用是多个应用层进程可同时使用下面运输层的服务;分用是运输层把收到的信息分别交付给上面应用层中相应的进程。
    网络层的主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层的传输单位是数据报。
    网络层的功能:路由选择(选择最佳路径);流量控制;差错控制;拥塞控制(不只是主机之间,还包括所有结点之间,速度不匹配都要进行调整)。
    数据链路层的主要任务是把网络层传下来的数据组装成帧,其传输单位是帧。
    数据链路层的功能:成帧(定义帧的开始和结束);差错控制(包括帧错和位错);流量控制;访问/接入控制(控制对信道的访问)。
    物理层的主要任务是在物理媒体上实现比特流的透明传输,其传输单位是比特。透明传输指的是不管所传数据是什么样的比特组合,都应当能够在链路上传送。
    物理层的功能:定义接口特性;定义传输模式(单工、半双工、双工);定义传输速率;比特同步;比特编码。

    3、TCP/IP 参考模型

    TCP(Transport Control Protocol,传输控制协议) ,IP(Internet Protocol,互联网协议)。
    TCP/IP 参考模型相比于 OSI 参考模型进行了简化,它只有4层,分别是应用层、传输层、网际层和网络接口层,其示意图如下图所示。
    在这里插入图片描述
    TCP/IP 参考模型和 OSI 参考模型的相同点:都分层;基于独立的协议栈的概念;可以实现异构网络互连(不同厂家生产的设备能够互连)。
    TCP/IP 参考模型和 OSI 参考模型的不同点:OSI 模型定义了服务、协议和接口;OSI 模型先出现,参考模型先于协议发明,不偏向特定协议;TCP/IP 设计之初就考虑到异构网互联问题,将 IP 作为重要层次;还有一个不同点见下图。
    在这里插入图片描述
    面向连接有三个阶段,即建立连接阶段、建立成功后的数据传输阶段以及数据传输完成后释放连接阶段。无连接不用这么多阶段,它直接进行数据传输。

    4、五层参考模型

    五层参考模型综合了TCP/IP 模型和 OSI 模型的优点,各层功能及其协议如下图所示。
    在这里插入图片描述
    五层参考模型的数据封装与解封装的示意图如下图所示。
    在这里插入图片描述
    从上层到下层的传输形式依次是:报文(应用层)—>报文段(传输层)—>数据报(网络层)—>帧(数据链路层)—>比特(物理层)。


    总结

    以上就是计算机网络——组成、分类、性能指标、分层结构的所有内容了,对本文中提到的一些性能指标要熟练掌握,此外,五层参考模型需要重点理解,之后会对每一层展开详细的介绍。
    参考视频:
    计算机网络的概念、组成、功能和分类
    速率、带宽、吞吐量
    时延、时延带宽积、往返时延、利用率
    计算机网络的分层结构
    OSI 参考模型1
    OSI 参考模型2
    TCP/IP 参考模型

  • 相关阅读:
    聊聊HttpClient的NoHttpResponseException
    乐观锁与悲观锁
    bug05:腾讯短信SDK 引用报错 java.lang.NoSuchMethodError: org.json
    【ftp篇】 vsftp(ftp) 每天生成一个动态密码
    【Android】-- Intent(显式和隐式Intent)
    对于html和css初学者,你有什么值得推荐的简单的网页适合练习?
    DITTEL控制器维修SENSITRON6-2AE
    包装流的使用练习
    2024第11届中国(北京)国际老年产业博览会:推动老龄产业的高质量发展
    2020中青杯A题集成电路通道布线数学建模全过程论文及程序
  • 原文地址:https://blog.csdn.net/weixin_42570192/article/details/126386455