当前位置: 首页 > news >正文

[计算机网络(第八版)]第一章 概述(学习笔记)

1.1 计算机网络在信息时代中的作用

21世纪是以网络为核心的信息时代,21世纪的重要重要特征:数字化、网络化与信息化。

  • 三大类网络
    1. 电信网络:向用户提供电话、电报、传真等服务;
    2. 有线电视网络:向用户传送各种电视节目,用户通过卫星信号接收电视信号;
    3. 计算机网络:使用户能够在计算机之间传输数据。
  • 在三大类网络中,发展最快的并起核心作用的是计算机网络。
  • 三网融合:电信网络和有线电视网络融入计算机网络,计算机网络能够向用户提供电话通信、视频通信以及传送视频节目的服务
  • Internet是当今全球最大最重要的计算机网络。
  • Internet 的译名:
    1. 因特网
    2. 互联网,Internet 是由数量极大的各种计算机网络互连起来的,采用互联网这个译名能体现 Internet 最主要的特征。
  • 对于仅在局部范围互连起来的计算机网络只能称之为互连网internet,而不是互联网Internet。
    • 互联网 ≠ 互连网
    • 注意,互联网Internet与互连网internet是不同的,互联网Internet的范围为全球,而互连网internet的范围仅为局部范围。互联网特指覆盖全球的,具有连通性和资源共享性的计算机网络。
  • 互联网的两个重要基本特点:
    1. 连通性:
      • 在互联网上网的用户之间可以方便快捷的交换各种信息,好像用户的终端彼此相互连通一样。
      • 连通性是互联网提供许多服务的基础。
    2. 共享:
      • 共享即资源共享,包含信息共享、软件共享以及硬件共享,其中硬件共享指的是互联网中一些向用户提供的服务器或网盘。
      • 共享是形成互联网的作用
    • 连通性和资源共享是Internet通过服务的基础
  • 互联网的地位:
    • 现在互联网已经成为社会最为重要的基础设施之一,互联网技术是推动世界发展的核心技术之一。
    • 互联网已经成为世界上最大的计算机网络。

1.2 互联网概述

1.2.1 网络的网络(互连网)

一般情况下,“网络”指的都是“计算机网络”的简称。

  • 计算机网络(简称为网络),由若干节点(node)和连接这些节点的链路(link)组成。
    • 其中,节点可以是计算机、集线器、交换机或路由器等,除了链路之外的全为节点;
    • 链路为传递信息的通道,如网线。
    • 在这里插入图片描述
  • 互连网:有多个网络通过一些路由器相互连接起来,构成一个覆盖范围更大的计算机网络。
    • 互连网就是“网络的网络”。
    • 在这里插入图片描述
    • 在互连网的图示中,通常使用一朵云表示一个网络。使用一朵云表示一个网络可以不用考虑每一个网络中的具体细节,即不用考虑在一个网络中具体是如何进行网络的连接的。
    • 在互连网的图示中,可以将把有关的计算机画在云的外面,这样子可以不用考虑互连网中各个计算机之间相互连接的具体细节。
    • 在这里插入图片描述
    • 在互连网中,与网络相连的计算机通常称为主机(host),而路由器是一种特殊的计算机(有中央处理器、存储器、操作系统等),路由器不能称为主机。
  • 网络与互连网的基本概念:
    • 网络把许多计算机连接在一起,而互连网把许多网络通过路由器连接在一起。与网络相连的计算机常称为主机。
  • 互联网特指覆盖全球的,具有连通性和资源共享性的计算机网络。
  • 计算机网络、互连网、互联网的关系:
    • 计算机网络 => 互连网 => 互联网(从左到右覆盖范围增大)

1.2.2 互联网基础结构发展的三个阶段

  • 第一阶段(1969-1990)
    • 第一阶段是从单个网络 ARPANET 向互联网发展的过程。
      • ARPANET 互联网的雏形,1983年TCP/IP协议成为ARPANET上的标准协议,使得所有使用TCP/IP协议的计算机都可以利用互连网通信,所以1983年互联网诞生的时间。
    • internet 与 Internet:
      • internet:互联网,是一个通用名词,泛指由多个计算机网络互连而成的计算机网络。(网络之间的通信协议可以任意选择)
      • Internet:互联网或因特网,是一个专用名词,指当前全球最大的、开放的、由众多网络相互连接而成的特点互联网,采用TCP/IP协议作为通信的规则,其前身为 ARPANET。
    • 任意把几个计算机网络互连起来,不管采用的通信协议,并且能够相互通信,这样构成的是一个互连网(internet),不是互联网(Internet)。
  • 第二阶段(1985-1993)
    • 第二阶段的特点是建成了三级结构的互联网,这三级计算机网络分别是:主干网(广域网)、地区网(城域网)、校园网(企业网/局域网)。
    • 在这里插入图片描述
  • 第三阶段(1993至今)
    • 第三阶段的特点是逐渐形成了全球范围的多层次ISP结构的互联网。
    • ISP(Internet Service Provider),互联网服务提供者,或互联网服务提供商,即提供接入互联网服务的人或厂商。
      • 现在,中国电信、中国联通、中国移动等公司,是我国有名的ISP。
      • 互联网服务提供者ISP可以从互联网管理结构申请到很多IP地址,互联网上的主机必须有IP地址才能上网,这里的上网就是通过ISP获得IP地址接入互联网。
      • IP地址被分配给用户之后,用户不使用IP地址后,不被使用的IP地址会被回收
      • 主机向本地ISP申请IP地址接入网络,本地ISP向地区ISP申请,地区ISP向主干ISP申请。
    • 根据提供服务的覆盖面积大小以及拥有的IP地址数,ISP分为主干ISP、地区ISP、本地ISP。(多层次ISP结构)
    • 在这里插入图片描述
    • 互联网交换点,IXP(Internet eXchange Point),允许两个网络直接相连,并交换分组,两个网络之间不需要在通过第三个网络来转发分组。
      • 即互联网交换点,可以使两个地区间的网络直接通信,不用借助上一级网络。
      • IXP常采用工作在数据链路层的网络交换机。
    • 万维网,WWW(World Wide Web)。

1.2.3 互联网标准化工作

  • 互联网标准化工作,即规范规定在网络中数据如何进行传输。
  • RFC(Request For Comments)请求评论。所有的互联网标准都是以RFC的形式在互联网上发表的
  • 指定互联网的正式标准的三个阶段
    • 互联网草案
    • 建议标准
    • 互联网标准

1.3 互联网的组成

  • 互联网可以划分为一下两大块:
    • (1)边缘部分:由所有连接在互联网上的主机组成。这部分是用户直接使用的,用于进行通信和资源共享。
    • (2)核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服务的,提供连通性和交换。
    • 在这里插入图片描述

1.3.1 互联网的边缘部分

  • 处在互联网边缘的部分就是连接在互联网上的所有的主机。
    • 连接在互联网上的主机又被称为端系统,“端”即“末端”,互联网的末端。
    • 端系统由各类主机构成,可以是一台普通的个人电脑,也可以是一部具有上网功能的智能手机,甚至可以是一个网络摄像头…
    • 端系统之外不会再连接其他设备,即不会通过端系统进行中转连接其他设备。端系统不进行数据的转发,而是进行资源的提供。
  • 计算机之间通信:
    • 主机A与主机B之间进行通信,实际上,是运行在主机A上的某个程序和运行在主机B上的另一个程序之间进行通信,由于进程即运行的程序,所以计算机之间的通信为,主机A的某个进程和主机B上的另一个进程之间的通信。
  • 在网络边缘的端系统之间的通信方式可以划分为两大类:
    • (1)客户 – 服务器方式(C/S方式,Client/Server)
    • (2)对等方式(P2P方式,Peer-to-Peer)

(1)客户 – 服务器方式

  • 客户和服务器都是指通信中所涉及的两个应用进程
    • 客户–服务方式所描述的是进程之间服务于被服务的关系。
    • 客户是服务的请求方,服务器是服务的提供方。
    • 在这里插入图片描述
    • 客户与服务器的通信关系建立后,通信可以是双向的,即客户和服务器都可以发送和接收数据。
  • 客户程序与服务程序的特点:
    • 客户程序:
      • 客户程序必须知道服务器程序的地址
      • 不需要特殊的硬件和很复杂的操作系统
    • 服务器程序:
      • 服务器程序需要可以同时处理多个远地或本地客户的请求
      • 服务器程序启动后就一直不断地运行,被动地等待并接收来自各地的客户的通信请求
      • 服务器程序不需要知道客户程序的地址
      • 服务器程序一般需要强大的硬件和高级的操作系统支持

(2)对等方式

  • 对等连接(peer-to-peer,简写P2P)是指两台主机在通信时,并不区分哪一个是服务请求方和哪一个是服务提供方,只要两台主机都运行了对等连接软件(P2P软件),它们就可以平等的对等连接通信。
  • 在对等方式中,两台主机相互之间都可以提出申请,也都可以提供服务。
    • 实际上,对等连接方式从本质上看仍然是客户–服务器方式,只是对等连接中的每一台主机既是客户又是服务器。
  • 在这里插入图片描述

1.3.2 互联网的核心部分

  • 互联网的核心部分向边缘部分提供通信的保证,核心部分向边缘部分提供连通性,使边缘部分的任何一台主机都可以与其他主机通信。
  • 在网络核心部分其特殊作用的是路由器
    • 路由器是一种专用计算机,但是路由器不叫作主机。
    • 路由器是实现分组交换(信息的存储与转发)的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能==。

1. 电路交换的主要特点

  • 交换就是转接,把一条电话线转接到另一条电话线,使它们连通。从通信资源的分配角度看,交换就是按照某种方式动态的分配传输线路的资源。
  • 电路交换:经过“建立连接(占用通信资源,建立一条专用的物理通路) => 通话(一直占用通信资源,主叫与被叫双方相互通话) => 释放连接(归还通信资源,释放刚才使用的专用的物理通路)”三个步骤的交换方式。
    • 只要有上述的三个过程,且通信过程中一直占用通信线路,即为电路交换。
  • 电路交换的特点:
    • 在通话的全部时间内,通话的两个用户始终占用端到端的通信资源,通话时间内通信资源被通话的两端独享。
      • 在这里插入图片描述
    • 当使用电路交换来传送计算机数据时,由于通话时间其他用户不能使用通信资源,且计算机数据具有突发信,即不知道什么时候会进行数据交换,会存在大部分的空闲时间,所以电路交换中线路的传输效率很低。
    • 电路交换不适合网络传输

2. 分组交换的主要特点

  • 分组交换采用存储转发技术,把一个报文划分成几个分组后再进行传送。
    • 通常,把要发送的整块数据称为一个报文。
    • 在发送报文之前,会把较长的报文划分为一个个更小的等长的数据段,在每一个数据段前面加上一些必要的控制信息组成的首部(首部由协议决定)构成一个分组。
    • 分组又被称为包,分组的首部又被称为包头
    • 分组是在互联网中传送的数据单元,即分组是数据传输单位。
    • 在这里插入图片描述
  • 位于网络边缘部分的主机和位于网络核心部分的路由器都是计算机。
    • 主机:为用户进行信息处理,和其他主机通过网络交换信息;
    • 路由器:用来转发分组,进行分组交换。
      • 路由器收到一个分组,会先暂时存储,检查该分组的首部,查找转发表,按照首部中的目的地址找到合适的接口转发出去,把分组交给下一个路由器。
      • 所以各路由器之间必须经常交换彼此掌握的路由信息。
  • 每个分组的传输路径是不受我们控制的,根据当时网络的情况选择最佳路径。
  • 分组交换中每个分组不会独占整条传输路径,只会占传输路径的一段。
  • 接收端收到分组后会剥去首部还原成报文。
  • 在这里插入图片描述
  • 分组交换的优点:
    • 高效:在分组传输的过程中动态分配传输带宽,对通信链路逐段占用
    • 灵活:为每一个分组独立地选择最合适的转发路由
    • 迅速:以分组作为传送单位,不先建立连接就能向其他主机发送分组
    • 可靠:保证可靠性的网络协议;分布式多路由的分组交换网,使网络有很好的生存性
  • 分组交换的问题:
    • 数据多时,分组在各路由器存储转发需要排队,会造成一定的时延。到一个路由的分组多时,由于路由需要一个个判断向哪转发,所以需要排队,从而产生时延。
    • 各分组必须携带控制信息,会造成一定的开销,且路由器需要暂存分组对分组分析与维护转发表也会增加开销。
  • 三种交换方式:
    • 在这里插入图片描述
    • 如果要连续传送大量的数据,且传送时间远大于连接建立时间,则电路交换的传输速率较快;
    • 报文交换和分组交换不需要预先分配传输带宽,在传送突发数据时可以提高整个网络的信道利用率;
    • 由于一个分组的长度远小于整个报文的长度,所以分组交换比报文交换的时延小(分组交换到达目的地更快),具有更好的灵活性。

1.4 计算机网络在我国的发展

1.5 计算机网络的类别

1.5.1 计算机网络的类别

  • 对于计算机网络的较好的定义:
    • 计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特点目的。这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用。
      • 计算机网络所连接的硬件并非只有计算机,还包括了智能手机、智能电视等
      • 计算机网络并非只用于传送数据,还能够支持许多应用
      • 可编程硬件,表明这种硬件一定包含有中央处理器CPU。
  • 计算机网络比较通俗的定义:
    • 计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备通过通信线路连接起来,在网络操作系统、网络管理软件及网络通信协议的管理与协调下,实现资源共享和信息传递的计算机系统。

1.5.2 几种不同类别的计算机网络

1. 按照网络的作用范围进行分类

  1. 广域网(WAN,Wide Area NetWork)
    • 也称为远程网
    • 广域网是互联网的核心部分。
    • 广域网的作用范围一般包含一个国家,广域网也叫主干网。
    • 负责远距离传输。
  2. 城域网(MAN,Metropolitan Area NetWork)
    • 城域网的作用范围一般是一个城市。
    • 互联网核心部分的边缘部分。
  3. 局域网(LAN,Local Area NetWork)
    • 局域网的作用范围局限在较小的范围,局域网的作用范围一般是一个学校或工厂,局域网也叫校园网或企业网。
  4. 个人区域网(PAN,Personal Area NetWork)
    • 个人区域网就是在个人工作的地方把属于个人使用的电子设备用无线技术连接起来的网络。
    • 个人区域网也叫无线个人区域网(WPAN,Wireless PAN)。通过个人热点形成的一个网络。

2. 按照网络的使用者进行分类

  1. 公用网(public network)
    • 电信公司出资建造的大型网络,按电信公司的规定缴纳费用的人都可以使用这种网络。
    • 公用网也叫公众网。
  2. 专用网(private network)
    • 某个部门为满足本单位的特殊业务工作的需要而建造的网络。
    • 这种网络不向本单位以外的人提供服务。

3. 用来把用户接入到互联网的网络

  • 这种网络就是接入网(AN,Access Network),也叫本地接入网或居民接入网。
  • 这种网络是主干网络到用户终端之间的所有设备,这种网络可以由ISP提供。接入网实际上就是本地ISP所拥有的网络
  • 接入网既不是互联网的核心部分也不是互联网的边缘部分,是端系统到本地ISP第一个路由器之间的链路,本地ISP可以使用接入网将用户端系统接入互联网。
  • 接入网只是起到用户与互联网连接的“桥梁”作用。

1.6 计算机网络的性能

  • 计算机网络的性能一般是指它的几个重要的性能指标。主要包括:速率、带宽、吞吐量、时延带宽积、往返时间RTT、利用率等。

1.6.1 计算机网络的性能指标

1. 速率

  • 计算机发送的信号都是二进制数字形式的。
    • 二进制数字也叫做比特(bit,binary digit),一个比特就是二进制数字中的一个 1 或 0。
    • 在香农的理论中,比特为信息量的单位。
  • 速率:
    • 数据的传送速率,也称为数据率或比特率
    • 单位bit/s(比特/秒,或b/s、bps [bit per second])。
    • 速率是指理想状态下,一定时间内网络信道可通过的最大数据量,并不是一个比特在信道中的传输速度。比如,一条马路单位时间内能够通过多少辆汽车。
    • 一般情况下,我们提到网络的速率是指额定速率或标称速率,并不是网络实际上的运行速率。
  • 速率不同单位间的转换:
    • k=103k = 10^3k=103
    • M=106=103kM = 10^6 = 10^3kM=106=103k
    • G=109=103M=106kG = 10^9 = 10^3M = 10^6kG=109=103M=106k
    • T=1012T = 10^12T=1012
    • P=1015P = 10^15P=1015
    • E=1018E = 10^18E=1018
    • Z=1021Z = 10^21Z=1021
    • Y=1024Y = 10^24Y=1024
  • 在通信邻域,单位间的转换与在计算机领域的不同。

2. 带宽

  • 带宽的两种意义:
    1. 带宽是指某个信号具有的频带宽度
      • 信号的带宽是指该信号所包含的各种不同频率成分所占据的频率范围。
      • 这种意义的带宽的单位是赫。
      • 这种意义下信道的带宽表示某信道允许通过(传输)的信号频带范围。
      • 这种意义是在频域下
      • 带宽越大,通过的信号越多,同一时间间隔内通过的比特数越多,比如,车道数越多(路越宽),同一时间间隔内通过的车越多
    2. 在计算机网络中,带宽用来表示网络中某通道传送数据的能力
      • 在单位时间内网络中的某信道所能通过的“最高数据率”,即在单位时间内在网络信道中所能通过的最大比特数(数据量)。
      • 这种意义的带宽的单位为数据率的单位bit/s(比特每秒)。
      • 这种意义是将频域下的概念映射到时域下
    • 前者为频域称谓,后者为时域称谓
  • 速率与带宽
    • 速率是某个信道在理想状态下,单位时间内可通过的最大比特数(信道宽度不受限)
    • 带宽是指在某个条件下(信道宽度受限,原先可以使用10但限制为5),单位时间内可通过的最大比特数。
      • 比如,一条马路原先可以又10个车道通信,但由于交通管制只能使用5个车道
      • 在这里插入图片描述

3. 吞吐量

  • 吞吐量表示在单位时间内通过某个网络(或信道、接口)的实际数据量。
  • 吞吐量受网络带宽或网络额定速率的限制,带宽越大单位时间内通过的数据量越大,吞吐量越大。如果传输信道发生信道阻塞或拥塞,吞吐量可能小于或远小于额定值,甚至下降到0。

4. 时延

  • 时延是指数据(一个报文或分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。
    • 时延也称为延迟或迟延。
    • 时延由发生时延、传播时延、处理时延与排队时延组成。
(1)发送时延
  • 发送时延是主机或路由器发送数据帧所需的时间,即从发送第一个比特开始,到该帧的最后一个比特发送完毕所需的时间。
    • 发送时延也叫传输时延。
    • 发生时延是计算机将数据发送到传输链路上所需的时间
  • 发送时延的计算公式:
    • 发送时延=数据帧长度(bit)发送速率(bit/s)发送时延 = \frac{数据帧长度(bit)}{发送速率(bit/s)}发送时延=发送速率(bit/s)数据帧长度(bit)
    • 数据的发送速率的单位时每秒发送多少个比特,即发送速率是指在某个点或某个接口上的发送速率。
(2)传播时延
  • 传播时延是电磁波在信道中传输一定距离需要花费的时间。
  • 传播时延的计算公式:
    • 传播时延=信道长度(m)电磁波在信道上的传播速率(m/s)传播时延 = \frac{信道长度(m)}{电磁波在信道上的传播速率(m/s)}传播时延=电磁波在信道上的传播速率(m/s)信道长度(m)
    • 传播速率的单位是每秒传播多少公里,是指在某一段传输线路上比特的传播速率。
  • 传播时延与发送时延的区别:
    1. 两种时延发送的地方不同,发送时延发生在机器内部的发送器(网络适配器),传播时延发生在机器外部的传输信道媒体上。
    2. 发送时延和发送速率相关,与传播速率、传输信道的长度无关。
    3. 传播时延与传播速率相关,与发送速率无关,信号的传送距离越远传播时延越大。
(3)处理时延
  • 处理时延是主机或路由器在收到分组时对分组进行处理花费的时间。
(4)排队时延
  • 分组在经过网络传输时,需要经过许多路由器,由于每个分组被路由器处理时会产生处理时延,分组到路由器就需要进行排队等待处理,在路由器确定了转发接口后,由于每个分组进行转发也需要时间,所以分组还要在输出队列中排队等待转发,分组在排队时花费的时间就为排队时延。
  • 分组的排队队列越长,排队时延越大,如果路由的内存排满了,此时分组不能进入路由器,由于分组也不能在线路上停留,此时该分组会被丢弃,这个时候排队时延相当于无穷大。
总时延
  • 数据在网络中经历的总时延为上述四种时延之和:
    • 总时延=发送时延+传播时延+处理时延+排队时延总时延 = 发送时延 + 传播时延 + 处理时延 + 排队时延总时延=发送时延+传播时延+处理时延+排队时延
    • 在这里插入图片描述
  • 在总时延中,哪种时延占主导地位,需要根据具体情况具体分析。
  • 在高速链路(或高速带宽链路)上,比特是否会传送得更快?
    • 对于高速网络链路,提高得仅仅是数据得传播速率,如果传播时延占总时延很小得一部分,则传送速度变化不明显,其他时延未知,不一定会传送得更快

5. 时延带宽积

  • 时延带宽积就是传播时延和带宽相乘。
    • 时延带宽积=传播时延×带宽时延带宽积 = 传播时延 × 带宽时延带宽积=传播时延×带宽
  • 时延带宽积用于表示在一个链路种最大可以容纳多少个比特,即在该传输链路中的最大二进制数的个数。
    • 开始发送数据到接收端收到第一个比特时链路中所能容纳的比特数。
    • 链路的时延带宽积被称为以比特为单位的链路长度。
    • 管道中的比特数表示从发送端发出但尚未到达接收端的比特数。
    • 当链路的管道充满比特时,链路得到充分的利用。
  • 在这里插入图片描述

6. 往返时间RTT

  • 往返时间为从发送方发送数据开始,到发送方收到接收方的确认时,总共经历的时间(过去时间+回来时间)。
    • 往返时间即通信双方双向交互一次所需的时间。
  • 往返时间中包括各中间节点的处理时延、排队时延以及转发数据的发送时延。
  • 注意,往返时间不包括发送数据到链路上的时间,只有在最后一个比特到达接收方时,接收方才可能对数据进行处理并生成回送的响应信息。
  • 往返时间也被称为往返时延,强调发送方至少要经过多少时间才能知道自己所发送的数据是否被对方接收了。
  • 在这里插入图片描述
  • 在这里插入图片描述
  • 有效数据率:
    • 有效数据率=数据长度发送时间+RTT有效数据率 = \frac{数据长度}{发送时间+RTT}有效数据率=发送时间+RTT数据长度

7. 利用率

  • 利用率有信道利用率和网络利用率两种。
    • 信道利用率:某信道有百分之几的时间是被利用的,即信道有百分之几的时间是有数据通过的。
      • 如果无数据通过,即此时信道完全空闲,此时信道的利用率为0.
    • 网络利用率:全网络的信道利用率的加权平均值。
  • 信道的利用率并不是越高越好,因为如果信道的利用率很高,则说明信道上一直有数据通过,如果利用率过高,则可能信道中的数据量很大,此时可能会造成较大的时延(排队时延)。
  • 信道的利用率增大,信道引起的时延也会迅速增加
  • D0D_0D0表示网络空闲时的时延,D表示网络当前的时延,U为网络利用率(数值0-1):
    • D=D01−UD = \frac{D_0}{1-U}D=1UD0
    • 当网络利用率接近1时,网络产生的时延就会趋于无穷大,所以,信道利用率或网络利用率过高就会产生非常大的时延。
    • 在这里插入图片描述

1.6.2 计算机网络的非性能特征

  1. 费用
  2. 质量
  3. 标准化:遵循统一的标准,保证不同网络间可以通信
  4. 可靠性:保证数据传输的完整,不会出现丢包
  5. 可扩展性和可升级性
  6. 易于管理和维护

1.7 计算机网络体系结构

  • 在计算机网络的基本概念中,分层次的体系解构(或架构)是最基本的

1.7.1 计算机网络体系结构的形成

  • 为了实现计算机网络体系结构,提出了分层(最初的ARPANET就有提出分层),分层将庞大复杂的问题转化为若干个较小的局部问题,这些较小的局部问题比较易于研究和处理。
  • 分层的原则:抽象分层、统一标准、模块独立。
  • 国际标准化组织ISO提出开发系统互连基本参考模型OSI/RM,简称OSI。
    • OSI/RM是一个抽象的概念。
    • 1983年形成了开发系统互连基本参考模型的正式文件,即ISO 7498国际标准,也就是七层协议的体系结构。
    • 在这里插入图片描述
  • 由于OSI制定的太慢,最后得到广泛使用的并不是法律上的国际标准OSI,而是非国际标准TCP/IP,TCP/IP被称为事实上的国际标准。

1.7.2 协议和划分层次

  • 协议:为进行网络中的数据交换而建立的规则、标准或约定称为网络协议,网络协议简称为协议。
  • 网络协议的三个要素组成:
    1. 语法:数据与控制信息的结构或格式,交换信息使用什么语言。
    2. 语义:需要发出何种控制信息,完成何种动作以及做出何种响应,规定所要完成的功能,协议具体解决什么问题。
    3. 同步:事件实现顺序的详细说明,规定各种操作顺序,解决什么时间什么条件做什么特定操作的问题,完成功能做什么操作。
  • 协议通常有两种不同的形式
    • 使用便于人阅读和理解的文字描述
    • 使用让计算机能够理解的程序代码。
    • 两种不同形式的协议都必须能够对网络上的信息交换过程做出精确的解释。
  • 在这里插入图片描述
  • 计算机网络协议分层后各层所要完成的功能(包含以下一到多种):
    1. 差错控制,传输不能出错。
    2. 流量控制,发送端的发送速率和接收端的接收速率要匹配。
    3. 分段和重装,发送端将要发送的数据划分为小的单位,接收端要能够将其还原。
    4. 复用和分用,多个高层会话复用一个低层的连接,在接收端进行分用,将复合的通信内容分开。
    5. 连接建立和释放。
  • 分层的好处:
    1. 各层之间相互独立,高层不需要知道低层如何实现,只需要知道如何使用低层通过接口提供的服务即可。
    2. 灵活性好,当任何一层发生变化,只需保持接口不变,不会对其他层造成影响。
    3. 结构上可分割开
    4. 易于实现和维护
    5. 能促进标准化工作
  • 分层的缺点:有些功能会在不同层次种重复出现,会造成额外的开销。
  • 网络的体系结构是计算机网络的各层及其协议的集合,就是这个计算机网络及其构件所应完成的功能的精确定义(不涉及如何实现)。
    • 把计算机网络体系结构分为多层,每层通过制定标准、定义功能,最后由厂商进行实现。
    • 体系结构是抽象的,实现是具体的,是真正在运行的计算机硬件和软件

1.7.3 具有五层协议的体系结构

  • 在这里插入图片描述
  • 应用层:
    • 应用层的任务是通过应用进程之间的交互来完成特定网络应用
    • 应用层协议定义的是应用进程间通信和交互的规则
      • 进程,主机中正在运行的程序
    • 应用层交互的数据单元为报文
  • 运输层
    • 运输层的任务是负责向两台主机中进程之间的通信提供通用的数据传输服务
      • 两台主机怎么找到双方的进程
    • 运输层有复用和分用的功能
    • 运输层主要使用的协议
      • 传输控制协议TCP
        • 提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段
      • 用户数据报协议UDP
        • 提供无连接的尽最大努力的数据传输服务,其数据传输的单位为用户数据报
  • 网络层
    • 实现双方主机怎么找到对方
    • 网络层负责为分组交换网上的不同主机提供通信服务
    • 由于网络层使用IP协议,分组也叫IP数据报,简称为数据报
    • 网络层的任务
      • 通过一定的算法,在互联网中的每一个路由器上生成一个用来转发分组的转发表
      • 每一个路由器在接收到一个分组时,依据转发表中指明的路径把分组转发到下一个路由
    • 互联网使用的网络层协议是无连接的网际协议IP和许多路由选择协议,所以互联网的网络层也叫网际层或IP层
  • 数据链路层
    • 数据链路层简称为链路层
    • 实现两个相邻节点的可靠通信
    • 在两个相邻节点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成帧,在两个相邻节点间的链路上传送帧
    • 数据链路层不仅要检错还要纠错
  • 物理层
    • 在物理层上传送数据的单位是比特
    • 实现比特的传输,规定链路的规格
    • 物理传输媒体不属于物理层,而在物理层协议的下面,所以物理传输媒体常被当成第0层
  • 在这里插入图片描述
  • OSI参考模型把对等层次之间传送的数据单位成为该层的协议数据单元PDU

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

  • 实体(entity)
    • 表示任何可发送或接收信息的硬件或软件进程。
    • 在许多情况下,实体就是一个特定的软件模块。
  • 协议
    • 控制两个对等实体(或多个实体)进行通信的规则的集合。
    • 在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。
    • 协议的实现保证了能够向上一层提供服务。使用本层服务的实体只能看见服务而无法看见下面的协议。
      • 下面的协议对上面的实体是透明的。
    • 协议是“水平的”,即协议是控制对等实体之间通信的规则。但服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。
    • 只有那些能够被高一层实体“看得见”的功能才能称之为“服务”。上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令在OSI中称为服务原语。
  • 在同一系统中相邻两层的实体进行交互(即交换信息)的地方,通常称为服务访问点SAP(Service Access Point)。
    • 服务访问点SAP是一个抽象的概念,它实际上就是一个逻辑接口
    • OSI把层与层之间交换的数据的单位称为服务数据单元SDU (Service Data Unit)
  • 每一层都认为自己在通过协议与对等层之间进行通信,下层为上层提供服务,上层不关心下层的具体实现
  • 在服务提供者的上一层的实体又称为服务用户
  • 在这里插入图片描述

1.7.5 TCP/IP的体系结构

  • 在这里插入图片描述
  • 在这里插入图片描述
  • 在这里插入图片描述
  • IP层为网络的核心部分,越简单越好,把一切复杂的部分让网络的边缘部分实现
  • 在这里插入图片描述

相关文章:

[计算机网络(第八版)]第一章 概述(学习笔记)

1.1 计算机网络在信息时代中的作用 21世纪是以网络为核心的信息时代,21世纪的重要重要特征:数字化、网络化与信息化。 三大类网络 电信网络:向用户提供电话、电报、传真等服务;有线电视网络:向用户传送各种电视节目&am…...

AI绘图:常用镜头和视角

镜头 Establishing Shot 通过宽广或超宽广的视角交待故事发生的大地理环境 Master Shot 众多人物都能完整地出现在镜头里。 Wide Shot 广角镜头。又称“长镜头” Long Shot。人物全身展现,但在画面中所占比例相对较少 Ultrawide Shot 超广角镜头 Low Angle Sho…...

TCP四次挥手

TCP 四次挥手过程是怎样的? TCP 断开连接是通过四次挥手方式。 双方都可以主动断开连接,断开连接后主机中的「资源」将被释放,四次挥手的过程如下图: 客户端打算关闭连接,此时会发送一个 TCP 首部 FIN 标志位被置为 1…...

Tomcat源码分析-类加载器

类加载器 在分析 tomcat 类加载之前,我们简单的回顾下 java 体系的类加载器 启动类加载器(Bootstrap ClassLoader):加载对象是java的核心类库,把一些的 java 类加载到 jvm 中,它并不是我们熟悉的 ClassLoader&#x…...

MySQL进阶篇之视图/存储过程/触发器

今天我们主要来快速学习视图,存储过程,触发器四个方面的内容,一起加油学习吧,还有半年就有秋招了,要加快速度了,迫在眉睫,冲吧,兄弟们。 目录 1、视图 2、存储过程 3、存储函数 4、…...

【一看就会】实现仿京东移动端页面滚动条布局

简单粗暴直接上代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta http-equiv"X-UA-Compatible" content"IEedge"> <meta name"viewport" content&q…...

网易的“草长莺飞二月天”:增长稳健,加码研发,逐浪AI

2月23日&#xff0c;网易发布了2022年第四季度财报。 这是网易与暴雪分道扬镳后的首份财报&#xff0c;加上近期AIGC热度扩散至游戏、教育等各个领域&#xff0c;网易第四季度业绩及其对于GPT等热门技术的探索受到市场关注。 根据财报&#xff0c;第四季度&#xff0c;网易营…...

NPC内网穿透教程-入门

安装 安装包安装 releases下载 下载对应的系统版本即可&#xff0c;服务端和客户端是单独的 源码安装 安装源码 go get -u ehang.io/nps 编译 服务端go build cmd/nps/nps.go 客户端go build cmd/npc/npc.go docker安装 server安装说明 client安装说明 启动 服务端 下…...

【Linux修炼】14.磁盘结构/文件系统/软硬链接/动静态库

每一个不曾起舞的日子&#xff0c;都是对生命的辜负。 磁盘结构/文件系统/软硬链接/动静态库前言一.磁盘结构1.1 磁盘的物理结构1.2 磁盘的存储结构1.3 磁盘的逻辑结构二.理解文件系统2.1 对IO单位的优化2.2 磁盘分区与分组2.3 分组的管理方法2.4 文件操作三.软硬链接3.1理解硬…...

Spring源码分析:创建 BeanDefinition 流程

一、前期准备1.1 环境依赖<dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.1.7.RELEASE</version></dependency><dependency><groupId&…...

Linux 练习一(思维导图 + 练习过程)

文章目录一、Linux 用户管理及文件操作第一段练习记录&#xff1a;主要对用户进行删除添加设置密码等操作第二段练习记录&#xff1a;主要包括权限设置和查找命令第三段练习记录&#xff1a;关于文件的命令练习第四段练习记录&#xff1a;查找命令及查看内存命令的使用二、Linu…...

高德地图基础教程超详细版

在当前社会&#xff0c;对于地图的使用是很必须的&#xff0c;所以对于程序员来说也是需要掌握的技能&#xff0c;目前主流的又百度地图和高德地图&#xff0c;但是我建议使用高德地图&#xff0c;因为百度地图的API着实不好用吖&#xff0c;不好理解&#xff0c;对于开发人员来…...

基于A7核开发板的串口实现控制LED亮灭

1.通过操作Cortex-A7核&#xff0c;串口输入相应的命令&#xff0c;控制LED灯进行工作 1>例如在串口输入led1on,开饭led1灯点亮 2>例如在串口输入led1off,开饭led1灯熄灭 3>例如在串口输入led2on,开饭led2灯点亮 4>例如在串口输入led2off,开饭led2灯熄灭 5>例如…...

HyperGBM用Adversarial Validation解决数据漂移问题

本文作者&#xff1a;杨健&#xff0c;九章云极 DataCanvas 主任架构师 数据漂移问题近年在机器学习领域来越来越得到关注&#xff0c;成为机器学习模型在实际投产中面对的一个主要挑战。当数据的分布随着时间推移逐渐发生变化&#xff0c;需要预测的数据和用于训练的数据分布…...

关基系统三月重保安全监测怎么做?ScanV提供纯干货!

三月重保当前&#xff0c;以政府、大型国企央企、能源、金融等重要行业和领域为代表的关键信息基础设施运营单位都将迎来“网络安全大考”。 对重要关基系统进行安全风险监测并收敛暴露面&#xff0c;响应监管要求进行安全加固&#xff0c;重保期间实时安全监测与数据汇报等具体…...

RK3588关键电路 PCB Layout设计指南

1、音频接口电路 PCB 设计&#xff08;1&#xff09;所有 CLK 信号建议串接 22ohm 电阻&#xff0c;并靠近 RK3588 放置&#xff0c;提高信号质量&#xff1b;&#xff08;2&#xff09;所有 CLK 信号走线不得挨在一起&#xff0c;避免串扰&#xff1b;需要独立包地&#xff0c…...

二分边界详细总结

一、查找精确值 从一个有序数组中找到一个符合要求的精确值&#xff08;如猜数游戏&#xff09;。如查找值为Key的元素下标&#xff0c;不存在返回-1。 //这里是left<right。 //考虑这种情况&#xff1a;如果最后剩下A[i]和A[i1]&#xff08;这也是最容易导致导致死循环的…...

STM32---备份寄存器BKP和 FLASH学习使用

BKP库函数 学习BKP&#xff0c;首先就是知道BKP每一个函数的作用然后如何使用即可 使用备份域的作用只需要操作上面的两个函数即可&#xff0c;其余的都是它的其他功能 BKP简介 备份寄存器是42个16位的寄存器&#xff0c;可用来存储84个字节的用户应用程序数据。他们处在备份…...

Python-生成元组和字典

1.生成元组元组是元素按顺序组合后的产物&#xff0c;元组对象的类型是tuple型含有两个元素的元组成为数据对元组可以包含任意数量和任意类型的元素&#xff0c;其元素总数可以为0、1、2等&#xff0c;并且元素的先后顺序是由意义的。另外&#xff0c;元组中的元素类型没有必要…...

I.MX6ULL内核开发10:设备树

目录 一、设备树简介 二、设备树源码 三、获取设备树信息 1、增加设备节点 2、内核编译设备树 3、替换设备树文件 4、查看设备树节点 5、在驱动中获取节点的属性 6、编译驱动模块 7、加载模块 一、设备树简介 设备树的作用是描述一个硬件平台的硬件资源。这个“设备树…...

【大数据】记一次hadoop集群missing block问题排查和数据恢复

问题描述 集群环境总共有2个NN节点&#xff0c;3个JN节点&#xff0c;40个DN节点&#xff0c;基于hadoop-3.3.1的版本。集群采用的双副本&#xff0c;未使用ec纠删码。 问题如下&#xff1a; bin/hdfs fsck -list-corruptfileblocks / The list of corrupt files under path…...

国产音质好的蓝牙耳机有哪些?国产音质最好的耳机排行

随着时间的推移&#xff0c;真无线蓝牙耳机逐渐占据耳机市场的份额&#xff0c;成为人们日常生活中必备的数码产品之一。蓝牙耳机品牌也多得数不胜数&#xff0c;哪些国产蓝牙耳机音质好&#xff1f;下面&#xff0c;我们从音质出来&#xff0c;来给大家介绍几款国产蓝牙耳机&a…...

CTFer成长之路之XSS的魔力

XSS的魔力CTF XSS闯关 题目描述: 你能否过关斩将解决所有XSS问题最终获得flag呢&#xff1f; docker-compose.yml version: "3.2"services:xss:image: registry.cn-hangzhou.aliyuncs.com/n1book/web-xss:latestports:- 3000:3000启动方式 docker-compose up -…...

行锁、表锁、主键外键、表之间的关联关系

Java知识点总结&#xff1a;想看的可以从这里进入 目录2.4、行锁、表锁2.5、主键、外键2.5.1、主键2.5.2、外键2.6、表的关联关系2.4、行锁、表锁 MyISAM默认采用表级锁&#xff0c;InnoDB默认采用行级锁。 表锁&#xff1a;开销小&#xff0c;加锁快&#xff0c;不会出现死锁…...

JavaScript 进阶(面试必备)--charater4

文章目录前言一、深浅拷贝:one: 浅拷贝:two:深拷贝二、异常处理:one: throw 抛异常:two: try /catch 捕获异常:three:debugger三、处理thisthis指向 :one:普通函数this指向this指向 :two: 箭头函数this指向3.2 改变this:one: call():two: apply():three: bind()四、性能优化:on…...

ARM+FPGA架构开发板PCIE2SCREEN示例分析与测试-米尔MYD-JX8MMA7

本篇测评由电子发烧友的优秀测评者“zealsoft”提供。 本次测试内容为米尔MYD-JX8MMA7开发板其ARM端的测试例程pcie2screen并介绍一下FPGA端程序的修改。 ​ 01. 测试例程pcie2screen 例程pcie2screen是配合MYD-JX8MMA7开发板所带的MYIR_PCIE_5T_CMOS 工程的测试例&#…...

51单片机入门 - SDCC / Keil_C51 会让没有调用的函数参与编译吗?

Small Device C Compiler&#xff08;SDCC&#xff09;是一款免费 C 编译器&#xff0c;适用于 8 位微控制器。 不想看测试过程的话可以直接划到最下面看结论&#xff1a;&#xff09; 关于软硬件环境的信息&#xff1a; Windows 10STC89C52RCSDCC &#xff08;构建HEX文件&…...

OpenCV只含基本图像模块编译

编译OpenCV4.5.5只含基本图像模块&#xff0c;环境为Windows10 x64CMake3.23.3VS2019。默认编译选项编译得到的OpenCV库往往大几百MB甚至上GB&#xff0c;本文配置下编译得到的库压缩后得到的zip包大小仅6.25MB&#xff0c;适合使用OpenCV基本图像功能模块的项目移植而不牵涉其…...

Java实现阴历日历表(附带星座)

准备工作 1.无敌外挂(GitHub直达源码) Nobb 直击灵魂 https://github.com/xuyishanBD/Java_create_calendar.git2.maven配置(如果没有走上面的捷径) <dependencies><dependency><groupId>net.sourceforge.javacsv</groupId><artifactId>javac…...

Python入门之最基础

Python入门之最基础 IDLE有两种模式&#xff0c;一种是交互模式&#xff0c;通俗讲就是写一个代码&#xff0c;会得到相应的反馈&#xff0c;另一种为编辑模式. 注意事项&#xff1a; 标点符号一定要用英文符号 要注意缩进 dir(builtins)可以看到python所有的内置函数&#…...