【计算机网络学习笔记】(课程来源:b站湖科大教书匠)持续补充中~

CH1 概论

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

  • 计算机网络已经由一种通信基础设施发展成为一种重要的信息服务基础设施
  • 生活中不可或缺
  • 《中国互联网发展研究报告》

1.2 因特网概述

1.2.1 网络、互联网和因特网

  • 网络(Network):由若干结点(Node) 和连接这些结点的 链路(Link) 组成

下图中的笔记本、台式机、打印机都由交换机通过链路进行连接,链路可以是有线的,也可以是无线的下图为四个节点和三条链路组成的一个网络
在这里插入图片描述

  • 多个网络可以通过路由器进行互联,这样就构成了覆盖范围更大的网络,叫做互联网,因此互联网是网络的网络
    在这里插入图片描述
  • **因特网(Internet)**是世界上最大的互联网络
    在这里插入图片描述
  • Internetinternet 的区分:internet是一个通用名词,泛指由多个计算机网络互联而成的网络,在这些网络之间的通信协议可以是任意的;但Internet是一个专用名词,指的是全球最大的、开放的、由众多网络相互连接而成的特定计算机网络,采用TCP/IP协议族作为通信的规则,前身是美国ARPANET

1.2.2 因特网发展的三个阶段

  • 阶段1:单个网络ARPANET向互联网发展
    ①1969年,第一个分组交换网APRANET;
    ② 70年代中期,研究多种网络之间的互联;
    ③1983年,TCP/IP协议成为ARPANET的标准协议(因特网诞生时间),使得所有使用该协议的计算机都可以相互通信

  • 阶段2:逐步建成三级结构的因特网
    ①1985年,NSF围绕六个大型计算机中心建设NSFNET(主干网、地区网、校园网);
    ②1990,ARPANET任务完成,正式关闭;
    ③1991,美国政府将因特网主干网交给私人公司经营,并开始对接入因特网的单位收费;

  • 阶段3:逐步形成了多层次ISP结构的因特网
    ①1993年,NSFNET逐渐被若干个商用因特网主干网替代,政府机构不在负责因特网运营,让各种因特网服务提供者ISP(Internet Service Provider)来运营;
    ②1994,万维网WWW技术促使因特网迅速发展;
    ③1995年,NSFNET停止运作,因特网彻底商业化

note: ISP可以从因特网管理机构申请到成块的IP地址,同时拥有通信线路及路由器等连网设备,普通的用户通过ISP接入因特网;因特网上的主机都必须有IP地址才能进行通信。

中国三大ISP:电信,联通,移动

基于ISP的三层结构的因特网
在这里插入图片描述
容易遇到的问题:相隔较远的两台主机之间的通信可能需要经过多个ISP,如A和B

连入因特网上的用户也可以成为一个ISP,只需要购买调制解调器或者路由器,使其他用户可以与之相连

1.2.3 因特网的标准化工作

  • 标准化工作对因特网发展起到了很重要的作用
  • 标准指定的特点是面向公众
    ①所有RFC(Request For Comments)技术文档都下载:http://www.ietf.org/rfc.html
  • 因特网协会ISOC是一个国际性组织,负责对因特网进行全面管理
  • 标准化工作的四个阶段:因特网草案–>建议标准–>草案标准–>因特网标准(只有一小部分草案会成为因特网标准)

1.2.4 因特网的组成

  • 边缘部分
    ①由所有连接在因特网上的主机组成,用户直接使用,用来通信(传送数据、音频或视频)和资源共享
    ②主机可以是台式电脑、大型服务器、笔记本电脑、平板、手机、物联网智能硬件等
  • 核心部分
    ①由大量网络和连接这些网络的路由器组成,为边缘部分提供服务,提供连通性和交换
    在这里插入图片描述

1.3 三种交换方式

1.3.1 电路交换(Circuit Switching)

在这里插入图片描述

  • 当电话规模巨大时,电话之间两两相连需要的线路数量庞大,因此采用电话交换机对电话进行互连,大大减少了需要使用的电话线数量
    在这里插入图片描述
  • 从通信资源的分配角度来看,**交换(Switching)**指的是按照某种方式动态地分配传输线路的资源
  • 电路交换的三个步骤:①建立连接(分配通信资源);②通话(一直占用通信资源);③释放连接(归还通信资源)
    在这里插入图片描述
  • 如果使用电路交换来传输计算机数据,其线路的传输效率会很低

1.3.2 分组交换(Packet Switching)

  • 分组交换中最重要的器件是路由器,负责将各种网络互连起来,对接收到的分组进行转发
    在这里插入图片描述
  • 发送方:构造分组,发送分组
  • 路由器:缓存分组,转发分组(“存储转发”)
  • 接收方:接收分组,还原报文
  • 例子:H6向H2以报文的形式发送数据,报文被划分为更小的数据段,每个数据段加上首部,这些数据段构成一个分组/包,首部包含了目的地址等关键信息,数据段经过各个路由器分组转发,便可以到达H2,H2去掉各个数据段的首部,并组合还原原始报文
  • 各分组从源站到达目的站可以走不同的路径,即不同路由
  • 分组到达目的站的顺序不一定与分组在源站的发送顺序相同
  • 可能出现分组丢失、误码、重复等问题

1.3.3 报文交换(Message Switching)

  • 也采取存储转发的方式
  • 对报文大小没有限制,因此要求交换节点具有较大的缓存空间
  • 主要用于早期的电报通信网,现在已经被更加先进的分组交换取代

1.3.4 三种交换方式的对比

在这里插入图片描述

  • 报文交换不限制报文大小,因此需要交换节点具有较大的缓存空间
  • 相较于报文交换,分组交换减小了时延,避免了较长的报文长时间占用链路,也便于差错控制

优缺点对比

  • 电路交换
    Ⅰ. 优点
    ①通信时延小;
    ②有序传输;
    ③ 没有冲突(物理线路唯一);
    ④适用范围广(数字信号和模拟信号都可以);
    ⑤实用性强;
    ⑥控制简单;
    Ⅱ. 缺点
    ①建立连接时间长
    ②线路独占,使用效率低
    ③灵活性差(某一个节点出错则需要重新建立连接)
    ④难以规格化(数据直达,不同类型、规格、速率的终端难以进行通信,也难以差错控制)

  • 报文交换
    Ⅰ. 优点
    ①无需建立连接;
    ②动态分配线路(源站->交换机->交换机选取一条空闲链路进行传输);
    ③ 提高线路可靠性(若某条线路故障,则会换一条);
    ④提高线路利用率;
    ⑤提供多目标服务;
    Ⅱ. 缺点
    ①引起了转发时延(因为存储转发)
    ②需要较大的存储缓存空间
    ③需要传输额外的信息量

  • 分组交换
    Ⅰ. 优点
    ①无需建立连接,不存在建立连接的时延;
    ②线路利用率高;
    ③ 简化了存储管理(分组长度固定,则缓冲区长度也固定);
    ④加速传输(不同组之间的存储和转发可以同时进行);
    ⑤减少出错概率和重发数据量(分组小->出错概率更低,即使出错也只用重传出错分组,小于整个数据,降低了传输时延);
    Ⅱ. 缺点
    ①引起了转发时延(因为存储转发)
    ②需要传输额外的信息量
    ③对于数据报服务,存在失序、丢失或重复分组的问题;对于虚电路服务,存在呼叫建立、数据传输和虚电路释放三个过程

1.4 计算机网络的定义和分类

1.4.1 计算机网络的定义

  • 定义并未统一
  • 简单定义:一些接的、自治的计算机的集合

①互连:计算机之间可以通过有线or无线的方式进行数据通信
②自治:计算机是独立的,有自己的硬件和软件,可以单独运行使用
③集合:至少需要两台计算机

在不同的阶段,计算机网络有不同的定义,反映了该阶段计算机网络的发展水平

  • 当下较好的定义:计算机网络主要是由一些通用的、可编程的硬件互连而成的,而这些硬件并非专门用来实现某一特定目的(如传送数据或视频信号),这些可编程的硬件能够用来传送多种不同类型的数据,并能支持广泛的和日益增长的应用

①计算机网络所连接的硬件,不限于一般计算机,而是包括各种智能硬件
②计算机网络并非专门用来传送数据,而是能够支持很多种的应用

1.4.2 计算机网络的分类

  • 按交换技术:电路交换网络;报文交换网络;分组交换网络

  • 按使用者:公有网;专有网

  • 按传输介质
    ①有线网络:光纤,双绞线
    ②无线网络:WIFI技术

  • 按覆盖范围
    ①广域网WAN(国家、地区、州)
    ②城域网MAN(城市骨干网)
    ③局域网LAN(校园、楼道、单位)
    ④个域网PAN(并非像WAN,MAN,LAN那样进行网络连接,而是在个人工作的地方将属于个人使用的电子设备用无线技术连接起来,10m)

  • 按拓扑结构
    总线型(计算机都连接到一根总线上)
    优点:增删设备容易
    缺点:重负载时通信效率低,总线故障则全网瘫痪
    星型(计算机均与中央设备,即交换机相连)
    优点:便于集中控制和管理
    缺点:成本高,中央设备对故障敏感
    环型
    环中信号单向传输
    网状型
    一般情况下,某个结点至少有两条路径与其它结点相连
    优点:可靠性高
    缺点:控制复杂,线路成本高

1.5 计算机网络的性能指标

性能指标从不同方面度量计算机网络的性能,常用计算机性能指标有8个:

  1. 速率
  • 比特(bit),是信息量的单位
  • 常用数据量单位 8 bit=1 Byte = 1B;KB=2^10B; MB,GB,TB…
  • 对于一块固态硬盘,厂家标注的容量与是操作系统给出的容量不一致的原因
    在这里插入图片描述
  • 连接在计算机网络上的主机在数字信道上传输比特的速率,叫做比特率或数据率
  • 常用数据率单位bit/s(b/s,bps);kb/s=10^3b/s;Mb/s;Gb/s;Tb/s…
  • 题目:有一个待发送的数据块,大小100MB,网卡的发送速率为100Mbps,则网卡发送完该数据块需要多长时间?
    在这里插入图片描述
    平时估算也可以直接将M约掉,结果差异不大,约8s
  1. 带宽
  • 带宽在模拟信号系统中的意义:信号所包含的各种不同频率成分所占据的频率范围,单位为Hz(kHz,MHz,GHz)
  • 带宽在计算机网络中的意义:表示网络的 通信线路 所能传送数据的能力,因此网络带宽表示在单位时间内从网络中的某一点到另一点所能通过的 “最高数据率” ,单位:b/s(kb/s, Mb/s, Gb/s, Tb/s)
  • 上述两种意义之间联系紧密,一条通信线路的"频带宽度"越宽,其所传输数据的“最高数据率”也越高
  • 直接关系网络体验,如家庭网络200Mb/s
  1. 吞吐量
  • 表示在单位时间内通过某个网络(或信道、接口)的数据量
  • 经常用于对现实世界中的网络的一种测量,以确定 实际上 通过网络的数据量
  • 受网络的带宽或额定速率的限制,1Gb/s的以太网,往往因受限实际吞吐量为700Mb/s
  1. 时延
  • 三种时延:发送时延、传播时延、处理时延

发送时延:源主机发送数据会产生一定时间;公式为:分组长度(b)/发送速率(b/s)主机发送速率由网卡发送速率、信道带宽、交换机的接口速率共同决定,若三者都是1Gb/s,则理论上主机发送速率最大可以达到1Gb/s
在这里插入图片描述

传播时延:数据在链路上传输也会花费时间;公式:信道长度(m)/电磁波传播速率(m/s);计算传播时延需要先确认传播介质
在这里插入图片描述
处理时延:路由器对数据进行存储转发也需要花费时间;不方便计算

  • 传输过程可能会经过多条链路和多个路由器,因此会产生多个传播时延和处理时延

④(排队时延):本课程合并至处理时延

  • 传播时延与发送时延计算题目:
    在这里插入图片描述
  • 在处理时延忽略不计时,有可能是发送时延主导,也有可能传播时延主导
  1. 时延带宽积
  • 时延与带宽的乘积
  • 时延指的是传播时延
    在这里插入图片描述
  • 若发送端连续发送数据,则在所发送的第一个比特即将到达终点时,发送端就已经发送了时延带宽积个比特
  • 链路的时延带宽积又叫做以比特为单位的链路长度
  1. 往返时间
  • 在许多情况下,因特网上的信息不仅仅单方向传输,而是双向交互;
  • 双向交互一次的时间就叫做往返时间RTT(Round-Trip Time)
  1. 利用率
  • 利用率有两种:
    ①信道利用率:表示某信道有百分之几的时间是被利用的(即有数据通过)
    ②网络利用率:全网络的信道利用率的加权平均
  • 根据排队论,当某信道的利用率增大时,该信道引起的时延也会迅速增加;
  • 所以信道利用率并不是越高越好
    在这里插入图片描述
  • 也不能让信道利用率太低,这会使得资源浪费
  1. 丢包率
  • 丢包率指的是分组丢失率,指在一定时间范围内,传输过程中丢失的分组数量与总分组数量的比率
  • 具体可以分为接口丢包率、结点丢包率、链路丢包率、路径丢包率、网络丢包率等
  • 分组丢失主要有两种情况:
    ①分组在传输过程中出现 误码,被结点丢弃
    ②分组到达一台队列已满的分组交换机时被丢弃,在通信量较大时可能会造成 网络拥塞
    (若某台路由器输入缓冲区已满,此时主机发送的分组到达该路由器,路由器没有空间暂存,则只能将其丢弃)
    ③在实际过程中,路由器会在缓冲区未满时进行丢包,故而丢包率反映了网络的拥塞情况
    a. 无拥塞时路径丢包率为0
    b. 轻度拥塞时路径丢包率为1%~4%
    c. 严重拥塞时路径丢包率为5%~15%

1.6 计算机网络体系结构

1.6.1 常见的计算机网络体系结构

  1. OSI体系结构
  • 七层结构(由下至上):物理层->数据链路层->网络层->运输层->会话层->表示层->应用层
  • 法律上的国际标准
  • 失败原因:
    ①专家们缺乏实际经验
    ②实现复杂,效率低
    ③制定周期太长
    ④层次划分不合理
  1. TCP/IP体系结构
  • 由当时计算机普遍使用TCP/IP协议发展而来
  • 四层结构(由下至上):网络接口层->网际层->运输层->应用层
  • 事实上的国际标准
  • 接入因特网要求主机必须要使用TCP/IP协议,用户主机的操作系统中,通常带有符合TCP/IP体系结构标准的TCP/IP协议族
  • 同样用于网络互联的路由器中也带有符合TCP/IP体系结构标准的TCP/IP协议族
  • 路由器一般只包含网络接口层和网际层

(1)网络接口层

  • TCP/IP体系结构标准没有对网络接口层做出具体内容要求,目的在于可以互联世界各种不同的网络接口,如有线的以太网接口,无线局域网的WIFI接口,故本质上TCP/IP体系结构只有上边的三层

(2)网际层

  • IP协议是网际层核心协议

(3)运输层

  • TCP和UDP是运输层的两个重要协议

(4)应用层

  • 包含HTTP,SMTP,DNS,RTP等协议

在这里插入图片描述

  • IP协议向下互连不同的网络接口,向上为TCP和UDP提供网络互联服务,TCP和UDP在享受了网络互连服务的基础上,前者为应用层相应协议提供可靠传输服务,后者为应用层相应协议提供不可靠传输服务
    在这里插入图片描述

  • TCP/IP协议名字来源:TCP协议和IP协议在整个协议族中比较重要的两个协议,因此用它们来代表整个协议家族

  • 在嵌入式系统开发领域,TCP/IP协议族常称为TCP/IP协议栈,因为与DS中的栈在画法上类似

  1. 原理体系结构
  • 由于TCP/IP对网络接口层不做规定,便于学习计网,综合OSI和TCP/IP优点,归纳出原理体系结构
  • 五层结构(由下至上):物理层->数据链路层->网络层->运输层->应用层
    在这里插入图片描述

1.6.2 计算机网络分层的必要性

  • 计算机网络是个非常复杂的系统

  • 分层可以将复杂庞大的问题转化为较小的局部问题进行研究和处理

  • 计算机网络要解决的主要问题(由简到难剖析
    两台计算机通过一条网线连接
    考虑问题:
    (1)采用什么传输媒体
    (2)采用怎样的物理接口
    (3)使用怎么样的信号表示0和1

    不严谨地划分到物理层
    在这里插入图片描述
    多台主机通过总线进行连接
    考虑问题:
    (1)如何标识网络中的各个主机(主机编址问题,例如MAC地址);
    (2)如何从信号比特流中区分地址和数据(分组的封装格式问题);
    (3)如何协调各个主机争用总线
    总线型网络->以太网

    划分到数据链路层

    只要解决了物理层和数据链路层的问题,便可以实现分组在一个网络上传输了

    小型互联网
    考虑问题:
    (1)如何标识各网络以及网络中的各主机(网络和主机共同编址的问题,如IP地址:网络号+主机号
    (2)路由器如何转发分组

    划分到网络层在这里插入图片描述
    只要解决了物理层、数据链路层和网络层的问题,便可以实现分组在网络间进行传输了
    小型互联网(不同场景)
    在这里插入图片描述

    考虑问题:
    (1)如何解决进程之间基于网络的通信问题
    (2)若出现传输错误,应该如何处理

    划归到运输层

    只要解决了物理层、数据链路层、网络层和运输层的问题,便可以实现进程在网络间进行传输了

    小型互联网(不同场景)

    • 通过应用进程间的交互来完成特定的网络应用
    • 需要不同的应用协议,如HTTP, SMTP, FTP等

    划归到应用层

    在这里插入图片描述

1.6.3 计算机网络体系结构分层思想举例

在这里插入图片描述

  • 主机属于N1,服务器属于N2,N1与N2之间通过路由器连接

  • 主机向网络服务器发送请求,网络服务器接收到请求,并将数据发送回主机显示为网页的过程,实际上是应用层之间两个进程基于网络的通信

  • 通信过程中请求端(主机)的处理过程

    • 主机应用层按照HTTP协议规定,构建出一个HTTP请求报文
      在这里插入图片描述
    • 应用层将HTTP请求报文交付给运输层处理,运输层添加一个TCP首部,成为TCP报文段,首部的作用是区分应用进程和实现可靠传输
      在这里插入图片描述
    • 运输层将TCP报文段交付给网络层处理,网络层给TCP报文段添加一个IP首部,成为IP数据报,IP首部的作用是使得IP数据报可以在互联网上传输
      在这里插入图片描述
    • 网络层将IP数据报交给数据链路层处理,数据链路层添加一个ETH首部和ETH尾部,使之成为首部的作用是使得帧可以在一段链路/网络上传输,尾部的作用是让目的主机检查所接收到的帧是否有误码
      ![](https://i-blog.csdnimg.cn/direct/577fdd3bf3994699931f593891b3dadb.png
    • 数据链路层将帧交付给物理层,物理层会将帧看作比特流,当N1是以太网,物理层会给比特流前边添加前导码作用是让目的主机做好接收帧的准备
      在这里插入图片描述
    • 物理层将加了前导码的比特流变成相应的信号发送到传输媒体
      在这里插入图片描述
  • 信号到达路由器之后,路由器处理过程

    • 物理层将信号变换为比特流,去掉前导码后,成为帧,交付给数据链路层
    • 数据链路层去掉帧的首部和尾部,成为IP数据报,交给网络层
    • 网络层解析IP数据报的首部,提取出目的网络地址,然后查找自身路由表,确定转发端口
    • 网络层将IP数据包交付给数据链路层
    • 数据链路层给IP数据报添加一个首部和一个尾部,成为帧,交付给物理层
    • 物理层在N2是以太网的情况下给比特流加上一个前导码
    • 物理层将添加了前导码的比特流发送到传输媒体
    • 信号通过传输媒体到达Web服务器
  • 信号到达web服务器后,Web服务器的处理过程

    • 物理层将信号变成比特流,去掉比特流之后,成为帧,交给数据链路层
    • 数据链路层去掉帧的首部和尾部,成为IP数据报,交给网络层
    • 网络层去掉IP数据报的首部,成为TCP报文段,交给运输层
    • 运输层去掉TCP报文段的首部,成为HTTP请求报文,交给应用层
    • 应用层对HTTP请求报文进行解析,给主机发回HTTP响应报文
    • 发回响应报文的过程类似

1.6.4 计算机网络体系结构专用术语

  1. 实体
  • 任何可以发动或者接收信息的硬件或软件进程
  1. 对等实体
  • 收发双方相同层次中的实体
    在这里插入图片描述
  1. 协议
  • 控制两个对等实体进行逻辑通信的规则的集合
  • 称为逻辑通信的原因是,其实通信并不存在,只是我们假设出来的一种通信,方便研究某一层
    在这里插入图片描述
  • 计算机网络协议的三个要素:语法、语义、时序(同步)
    • 语法:定义所交换信息的格式,即交换信息由哪些字段以及何种顺序构成
      在这里插入图片描述
    • 语义:定义收发双方要完成的操作
    • 同步:定义收发双方的时序关系
      在这里插入图片描述
  1. 服务
  • 在协议的控制下,两个对等实体间的逻辑通信使得本层能够向上一层提供服务
  • 要实现本层协议,还需要使用下面一层所提供的服务
  • 协议是”水平“的,服务是”垂直“的
  • 实体看得见相邻下层所提供的服务,但是不知道实现该服务的具体协议,下层的协议对上层的实体是透明的
    在这里插入图片描述
  1. 服务访问点
  • 在同一系统中相邻两层的实体交换信息的逻辑接口,用于区分不同的服务类型
  • 例如:
    • 数据链路层的服务访问点为帧的类型字段
    • 网络层的服务访问点为IP数据报首部中的协议字段
    • 运输层的服务访问点为端口号
  1. 服务原语
  • 上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令称为服务原语
    在这里插入图片描述
  1. 协议数据单元 PDU
  • 对等层次之间传送的数据包称为该层的协议数据单元
    • 物理层数据包:比特流(bit stream)
    • 链路层数据包:帧(frame)
    • 网络层数据包:IP数据报或分组(packet)
    • 运输层数据包:TCP报文段(segment)/UDP用户数据报(datagram)
    • 应用层数据包:报文(message)
  1. 服务数据单元 PDU
  • 同一系统中,层与层之间交换的数据包称为服务数据单元
  • 多个SDU可以合成一个PDU,一个SDU也可以划分为几个PDU
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值