计算机网络学习笔记——第三章

  • Post author:
  • Post category:其他


  •      本文是[计算机网络](https://www.bilibili.com/video/BV1c4411d7jb?spm_id_from=333.999.0.0)的笔记,图片也从视频中截取。
    



3.1数据链路层概述



(1)概念

在这里插入图片描述



(2)封装成帧

  • 数据链路层添加帧头和帧尾,把数据封装成帧。
  • 帧头和帧尾:在链路层上以帧为单元来传输数据,实现链路层本身的功能。

    在这里插入图片描述



(3)差错检测

检错码:接收端判断在传输过程中是否出现了误码,并封装在帧尾。



(4)可靠传输

  • 接收端如果接收到是误码,就会将他丢弃。
  • 不可靠传输:丢弃就结束了。
  • 可靠传输:采取措施,使得接收方可以重新收到被丢弃的帧的副本。
  • 即发送方发送什么,接受方就收到什么。



(5)其他问题

  • 上面的三个问题是点对点,广播信道还有其他问题。
  • 编址问题:判断哪个主机接受数据。
  • 碰撞:多个主机发送数据。(共享式局域网(总线型)不可避免)(CSMA/CD)载波监听多点接入/碰撞检测
  • 交互式局域网:通过交换机进行转发。
  • 无线局域网:共享式。(CSMA/CA)载波监听多点接入/碰撞避免



3.2封装成帧

在这里插入图片描述

  • 不是所有的帧都有帧定界符,有些帧没有,比如MAC帧。
  • MAC帧
  • 数据链路层将帧传给物理层后,物理层会添加一个前导码。
  • 前导码前七个字节为同步码,使接受时钟同步;后面一个字节为开始定界符,表明后面是MAC帧。
  • 以太网规定帧间间隔时间为96比特发送时间,所以MAC帧不需要帧结束定界符。
  • 传输的数据可能与帧定界符相同,会出错。
  • 字节填充:在与定界符相同处前添加转义字符;如果有与转义字符相同,则也在前面添加。
  • 比特填充:每连续的五个一后添加一个零。

    在这里插入图片描述



3.3差错检测

在这里插入图片描述



(1)奇偶校验法

在这里插入图片描述

因为漏检率较高,一般不采用。



循环冗余校验CRC

在这里插入图片描述

  • 多项式必须包含最低次项。

    在这里插入图片描述

    在这里插入图片描述



3.4可靠传输



(1)可靠传输的基本概念

在这里插入图片描述

在这里插入图片描述

  • 分组丢失:路由器输入队列快满了,主动丢弃收到的分组。
  • 分组失序:未按照发送顺序到达接收端。
  • 分组重复:分组第一次在网络中滞留了,发送端超时重发,然后两个分组都到达。



(2)可靠传输的实现方式——停止-等待协议SW

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 通过确认和重传机制实现的可靠传输协议,常称为自动请求重传协议ARQ。
  • 重传的请求是自动进行的,不需要接受方显式的请求发送方某个出错的分组。



(3)可靠传输的实现方式——回退N帧协议GBN

在这里插入图片描述

![在这里插入图片描述![在这里插入图片描述](https://img-blog.csdnimg.cn/9a8e4158e1c249dbb5d125b596883bef.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAd29vZGVuZGVrdQ==,size_20,color_FFFFFF,t_70,g_se,x_16)

  • BGN在流水线传输的基础上,利用发送窗口来限制发送方可连续发送数据分组的个数。
  • 发送方只允许发送发送窗口内的分组,发送窗口外的分组不发送。
  • 接受方只允许接受接受窗口内的分组,接受窗口外的分组不发送。
  • 无差错情况:
  • 发送方将发送窗口内的分组按序号一次发送出去,经传输,正确到达接受方。
  • 接受方按序接受他们,每接收一个接受窗口向后移动一个,并给发送方发送针对所接受分组的确认分组。
  • 确认分组经传输正确到达发送方,发送方按序接受他们,每接收一个接受窗口向后移动一个,并从缓存中删除确认收到的分组。
  • 接收方可以择机把已经接受到的分组交付给上层处理。
  • 累计确认:
  • 接收方不一定要对收到的分组逐个发送确认,而是可以在收到几个数据分组后,对按序到达的最后一个数据分组发送确认。
  • ACKn表示序号为n及前面的所有数据分组都正确接受。
  • 发送方将发送窗口内的分组按序号一次发送出去,经传输,正确到达接受方。
  • 接受方按序接受他们,当接受完0号和1号以后,给发送方发送一个累计确认ACK1。
  • 当接受完2号到4号以后,给发送方发送一个累计确认ACK4。
  • 如果ACK1丢失了,ACK4正确到达发送方。
  • 发送方就知道了序号4之前的分组都接受了,发送窗口向后滑动,并从缓存中删除确认收到的分组。
  • 接收方可以择机把已经接受到的分组交付给上层处理。
  • 优点:
  • 即使某个确认分组丢失,发送方也不必重传。
  • 减小接收方的开销,减少对网络资源的占用。
  • 缺点:不能及时反映出接收方已经正确接受的数据分组信息。
  • 出现差错:
  • 发送方将发送窗口内的分组按序号一次发送出去,经传输,到达接受方。
  • 如0号出现了误码,接受方根据检错码发现错误,丢弃分组。
  • 后续到达的分组的序号与接受窗口的序号不匹配,同样丢弃。
  • 接收方发送上一次正确接受的分组的序号,每丢弃一个就发送一次。
  • 发送方收到重复的确认,就知道之前发送的数据分组出现了差错,于是可以不等超时计时器超时就立刻重传。具体几个要设置。
  • 如果没出发立刻重传,就等超时计时器出现超时,发送方将发送窗口内的数据全部重传。
  • 即使只是前面的出现错误,后面的正确,但是因为前面的不被接受,后面的也要重传,这就是GBN。
  • 当通信线路不好时,GBN的信道利用率并不比停止等待高。
  • 如果发送窗口为8时:
  • 发送方将发送窗口内的分组0到7号按序号依次发送出去,经传输,正确到达接受方。
  • 接受方按序接受他们,每接收一个接受窗口向后移动一个,并给发送方发送针对所接受分组的确认分组ACK7。
  • 如果ACK7丢失,发送方会超时重传。
  • 重传的0到7号按序号重新发送,到达接收方。
  • 因为前面的已经收到,所以就收窗口为0号。
  • 接受方分局窗口序号对分组依次接受,现在在重复接受,接受方无法分辨新旧分组,产生分组重复。
  • 所以,发送窗口尺寸不能超过上限。

    在这里插入图片描述

    在这里插入图片描述



(4)可靠传输的实现方式——选择重传协议SR

在这里插入图片描述

在这里插入图片描述

  • 发送方将发送窗口内的分组依次发送出去,经传输,到达接受方,其中的2号数据分组丢失了。
  • 只要序号落入接受窗口内且无误码的数据分组,接受方都会接受。
  • 接收方接受0号和1号数据分组,并发送0号和1号确认分组,接受窗口向后移动2个,4和5两个新序号落入窗口。
  • 接收方接受3号数据分组,并发送3号确认分组,但接受窗口不移动,3号没按顺序。
  • 确认分组经传输到达发送方。
  • 发送方每

    按序

    收到一个确认分组,滑动窗口就移动一个位置。
  • 发送方接受0号和1号确认分组,就移动两个位置,4和5号移动进发送窗口,发送方将4号和5号发送出去,将0和1号从缓存中删除。
  • 接收方可以择机将0和1号分组交付上层处理。
  • 发送方收到3号确认分组,但不能滑动,因为没收到2号分组,不过需要记录3号已收到确认,3号就不会超时重发。
  • 4和5号到达接收方,接收方接受并发送确认分组,但是窗口不能移动。
  • 发送方接受4和5号分组,发送方接受他们,但窗口不移动,不过需要记录已收到确认,不会超时重发。
  • 2号分组超时重传,接收方接受,并移动四个位置。
  • 发送方接受2号确认分组,并移动四个位置。

    在这里插入图片描述
  • 如果超过尺寸,某个确认分组丢失后,则会出现GBN一样的问题。



3.5点对点协议PPP



(1)概念

在这里插入图片描述

  • 一般用户接入英特网:连接到某个英特网服务提供者ISP(电信、移动)。
  • ISP已经从因特网管理机构申请到了一批IP地址。
  • 用户计算机只有获取到ISP分配的合法IP地址后才能成为因特网的主机。
  • 用户计算机与ISP通信时,数据链路层协议就是PPP协议。
  • 1999年在以太网上运行的PPP协议,即PPP over Ethernet,简称PPPoE,使得ISP可以通过DSL、电路调制解调器、以太网接入技术等
  • 宽带接入技术以以太网的形式为用户提供接入服务。
  • PPP也广泛应用于广域网路由器之间的专用线路。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述



(2)透明传输

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述



(3)差错检测

在这里插入图片描述



(4)工作状态

在这里插入图片描述

  • PPP链路的开始和结束状态都是静止状态,不存在物理层的连接。
  • 将测到调制解调器的载波信号,并建立物理层连接后,PPP进入链路的建立状态。
  • 链路控制协议LCP开始协商一些配置选项,成功进入鉴别状态;失败退回到静止状态。
  • 无需鉴别或鉴别成功进入网络状态;失败就进入终止状态。
  • 进入网络状态后进入NCP配置,完成后进入打开状态。



3.6媒体接入控制



(1)媒体接入控制的基本概念

在这里插入图片描述



(2)媒体接入控制——静态划分信道

在这里插入图片描述

在这里插入图片描述



频分复用FDM

在这里插入图片描述

  • 将传输线路的频带资源划分成多个子频带,形成多个子信道,各子信道之间需要留出隔离频带,以免造成子信道之间的信道干扰
  • 当多路信号输入一个多路复用器时,复用器将每一路信号调制到不同频率的载波上。
  • 接受端由相应的分用器通过滤波将各路信号分开,将合成的复用信号恢复成原始的多路信号。



时分复用TDM

在这里插入图片描述

  • 将传输线路的带宽资源按时隙轮流分配给不同的用户,每对用户只在所分配的时隙里使用线路传输数据。
  • 将时间划分成了一段段等长的时分复用帧。
  • 每一个时分复用的用户在每一个时分复用帧中占用固定序号的时隙。
  • 用户的时隙时周期性出现的。周期时时分复用帧的长度。



波分复用WDM

在这里插入图片描述

  • 波分复用就是光的频分复用。
  • 光信号传输一段距离后会衰减,必须放大才能进行传输。
  • 复用器和分波器之间可以放入4个放大器,使得他们之间无光电转换的距离可达600km。



码分复用CDM

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述



(2)媒体接入控制——动态划分信道——随机接入

  • 多个主机同时发送帧,代表帧的信号会产生碰撞(冲突)。
  • 某个主机正在使用总线发送帧的过程中,另一台主机也要发送帧,也会产生碰撞。

    在这里插入图片描述



如何处理总线局域网碰撞—— CSMA/CD

在这里插入图片描述

  • 96比特时间:发送96比特所消耗的时间,也称为帧间最小间隔。
  • 作用:接收方可以检测出一个帧的结束,同时也使得所有其他站点都有机会平等竞争并发送信道。

    在这里插入图片描述



CSMA/CD——争用期(碰撞窗口)

在这里插入图片描述



CSMA/CD——最小帧长

在这里插入图片描述



CSMA/CD——最大帧长

在这里插入图片描述

  • 主线上其他主机没有总线的使用权。
  • 目的主机的接受缓冲区无法装下该帧而产生溢出。



CSMA/CD——退避时间(截断二进制指数退避算法)

在这里插入图片描述



CSMA/CD——信道利用率

在这里插入图片描述



CSMA/CD——帧发送流程

在这里插入图片描述



CSMA/CD——帧接受流程

在这里插入图片描述



注意

  • CSMA/CD协议曾经用于各种总线结构以太网和双绞线以太网的早期版本中。
  • 现在的以太网基于交换机和全双工连接,不会有碰撞,因此没有必要使用CSMA/CD协议。



如何处理无线局域网碰撞—— CSMA/CA

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述



CSMA/CA——帧间间隔

在这里插入图片描述



CSMA/CA——工作原理

在这里插入图片描述

  • 若源站在规定时间内没有收到确认帧ACK,由重传计时器控制这段时间,就必须重传该数据帧,直到收到确认位置
  • 或者经过若干次的重传失败后放弃发送。
  • 源站为什么在检测到信道空闲后还要等待一段时间DIFS?
  • 考虑到可能有其他的站有高优先级的帧要发送,让高优先级的帧先发送。
  • 目的站为什么在检测到信道空闲后还要等待一段时间SIFS才发送ACK帧?
  • SIFS为最短的帧间间隔,用来分隔开属于一次对话的各帧。
  • 在这段时间内,一个站点应当能够从发送方式切换到接受方式。
  • 信道有忙转化为空闲且经过DIFS时间后,还有退避一段随机时间才能使用信道?
  • 防止多个站点同时发送数据产生碰撞。



CSMA/CA——退避算法

在这里插入图片描述

在这里插入图片描述



CSMA/CA——信道预约和虚拟载波监听

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • C虽然不会收到A发送的RTS帧,但是会受到B发送的CTS帧。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述



3.7MAC地址、IP地址和ARP协议

在这里插入图片描述


  • 概念可以参考
  • 连入网络的每一个计算机都会有网卡接口,每一个网卡都会有一个唯一的地址,这个地址就叫做 MAC 地址。计算机之间的数据传送,就是通过 MAC 地址来唯一寻找、传送的。
  • 假如没有子网这种划分的话,计算机 A 通过广播的方式发一个数据包给计算机 B , 其他所有计算机也都能收到这个数据包,然后进行对比再舍弃。世界上有那么多台计算机,每一台计算机都能收到其他所有计算机的数据包,那就不得了了。那还不得奔溃。 因此产生了子网这么一个东西。
  • 假如是同一个子网,那我们就用广播的形式把数据传送给对方,如果不是同一个子网的,我们就会把数据发给网关,让网关进行转发。



(1)MAC地址

在这里插入图片描述

  • 点对点通信不需要地址。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述



地址发送顺序

  • 字节发送顺序:第一字节到第六字节
  • 字节内比特发送顺序:b0到b7



单播MAC地址

在这里插入图片描述

  • 先构建帧,先填入目标主机和自己的MAC地址,再加上帧首部中的其他字段,数据载荷和帧尾部;
  • 主机A和C都会受到单播帧,主机A的网卡发现帧的目的MAC地址和自己的不匹配,于是丢弃;
  • 主机C的网卡发现帧的目的MAC地址和自己的匹配,于是接受该帧,并将该帧交给上层处理;



广播MAC地址

在这里插入图片描述

  • 先构建帧,先填入广播地址(全F)和自己的MAC地址,再加上帧首部中的其他字段,数据载荷和帧尾部;
  • 主机A和C都会受到单播帧,主机A和C的网卡发现帧的目的MAC地址是广播地址,于是接受,并将该帧交给上层处理;



多播MAC地址

  • 判断多播地址:第一个字节的最后一位为1,即不能整除2。

    在这里插入图片描述
  • 先构建帧,先填入多播地址和自己的MAC地址,再加上帧首部中的其他字段,数据载荷和帧尾部;
  • 主机BCD都会受到单播帧,主机B和C的网卡发现帧的目的MAC地址在自己的多播组列表中,都会接受该帧,并送交上层处理;
  • 主机D的网卡发现帧的目的MAC地址不在自己的多播组列表中,丢弃该帧;



(2)IP地址

在这里插入图片描述

  • 前三个字节是网络N8的编号,最后一个是网络N8上主机和路由器接口的编号。
  • 同一网络上的各主机网络号部分应该相同,主机号部分应该不同。
  • 因特网中不同网络的网络编号必须各不相同。

    在这里插入图片描述

    在这里插入图片描述



(2)ARP协议

  • ARP协议:将IP地址转化为MAC地址。

  • 每台主机都有一个ARP高速缓存表,通过查表来找MAC地址。

  • 如果没找到,发送ARP请求报文来获取目的主机的MAC地址。

    在这里插入图片描述

  • ARP请求报文被封装在MAC帧中发送,目的地址为广播地址。

  • 主机的网卡收到广播帧后,将其交给上层处理。

  • 上层的ARP进程解析ARP请求报文,若发现所询问的IP地址不是自己的地址,不理会;

  • 若是则要相应,将主机的IP地址记录到自己的ARP高速缓存表中;给主机发送ARP响应,已告诉自己的MAC地址。

    在这里插入图片描述

    在这里插入图片描述

  • ARP高速缓存表中的每一条记录,都有其类型,分为动态和静态两种。

  • 动态:记录是主机自动获取到的,生命周期默认为两分钟。生命周期结束时,记录自动删除。

  • IP地址和MAC地址的对应关系并不是永久性的。更换新的网卡,MAC地址改变。

  • 静态:用户或网络维护人员手工配置的,不同操作系统下的生命周期不同。

    在这里插入图片描述

  • ARP协议只能在一段链路或一个网络上使用,不能跨网络使用。

  • ARP除了请求和响应外,ARP还有其他类型的报文,如检测IP地址冲突的无故ARP、免费ARP。

  • ARP没有安全验证机制,存在ARP欺骗(攻击)问题。



3.8集线器与交换机的区别



(1)集线器

在这里插入图片描述

在这里插入图片描述

  • 使用集线器以太网在逻辑上是共享总线的,使用CSMA/CD协议来协调各主机争用总线,只能工作在半双工模式。



(2)交换机

在这里插入图片描述

  • 直通交换不必把整个帧先缓存后再进行处理,而是在接收帧的同时立即按帧的MAC地址决定该帧的转发口。



(3)对比集线器和交换机

在这里插入图片描述

  • 主机发送单播帧:

  • 集线器(共享总线型以太网):单播帧会传播到总线上的其他各主机,各主机上的网卡根据帧的MAC地址决定是否接受该帧。

  • 交换机(交换式以太网):根据帧的目的MAC地址和帧交换表将帧转发给目的主机。

    在这里插入图片描述

  • 主机发送广播帧:

  • 集线器(共享总线型以太网):单播帧会传播到总线上的其他各主机,各主机上的网卡根据帧的MAC地址是广播地址,接受该帧。

  • 交换机(交换式以太网):交换机收到帧后,检测到MAC地址式广播地址,于是除了进入交换机外的其他各接口转发该帧。

  • 集线器和交换机的个主机属于同一个广播域。

  • 多台主机同时给另一台主机发送单播帧:

  • 集线器(共享总线型以太网):产生碰撞,遭遇碰撞的帧会传播到总线上的各主机。

  • 交换机(交换式以太网):交换机收到帧后,缓存起来,然后逐个转发到目的主机,不会碰撞。

    在这里插入图片描述

  • 扩展以太网单播帧:

    在这里插入图片描述

    在这里插入图片描述

  • 扩展以太网广播帧:

  • 集线器和交换机扩展后的各主机都属于同一个广播域

  • 集线器的以太网:在逻辑上式总线的,形成一个更大的碰撞域。参与竞争总线的主机比之前的更多了。

    在这里插入图片描述

    在这里插入图片描述



3.9以太网交换机自学习和转发帧的流程

在这里插入图片描述

在这里插入图片描述

  • 主机A给主机B发送帧,该帧从接口1进入交换机1;交换机1先进行登记的工作,将该帧的源MAC地址和接口记录到帧交换表中(自学习)

  • 之后交换机1进行转发,目的地址为B,在帧交换表中查找目的地址B,找不到就进行盲目的转发(泛洪),也就是除进入交换机的接口外其他所有接口转发该帧

  • 主机B根据目的地址,接受该帧;主机C的网卡接收到该帧就知道这不是发送给自己的帧,丢弃;

  • 该帧从交换机2的接口2进入交换机2,交换机2首先进行登记,将MAC地址A和接口2记录到帧交换表中。

  • 之后交换机2对其进行转发,该帧的目的地址为B,在帧交换表中查找B,找不到则进行盲目的转发。

  • DEF都会收到,根据目的地址就知道不是给自己的,丢弃。

  • 主机B给主机A发送帧:

  • 该帧从交换机1的接口3进入交换机1;交换机1先进行登记,将该帧的源MAC地址和接口3记录到帧交换表中。

  • 之后交换机1进行转发,目的地址为A,在帧交换表中查找目的地址A,于是从接口号1发送给A(明确)。

  • 主机A收到该帧后根据目的MAC地址知道这是发给自己的,于是接受该帧。

  • 主机E给主机A发送帧:

  • 该帧从交换机2的接口3进入交换机2;交换机2先进行登记,将该帧的源MAC地址和接口3记录到帧交换表中。

  • 之后交换机2进行转发,目的地址为A,在帧交换表中查找目的地址A,于是从接口号2发送给A(明确)。

  • 该帧从交换机1的接口4进入交换机1,交换机1先进行登记的工作。

  • 之后交换机1进行转发,目的地址为A,在帧交换表中查找目的地址A,于是从接口号1发送给A(明确)。

  • 丢失帧的情况:

  • 主机A、主机G、交换机1的接口1共享同一条总线(没画出集线器)

  • 主机G给主机A发送帧,该帧通过总线进行传输,主机A和交换机1的接口1都可以接收到。

  • 主机A接收到后,根据目的地址,接受该帧。

  • 交换机1收到后进行登记工作,之后交换机1进行转发,目的地址为A,在帧交换表中查找目的地址A,于是从接口号1发送给A(明确)。

  • 但是该帧就是从接口1进入交换机的,交换机不会从该接口转发出去,于是丢弃。

  • 泛洪:即使在表中有MAC地址,也会转发,即不管如何都向所有接口转发。

  • 帧交换表中的每条记录都有自己的有效时间,到期删除:

  • ①交换机的接口改接了另一台主机

  • ②主机更改了网卡



3.10以太网交换机的生成树协议STP

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 广播风暴:

  • 主机H1发送一个广播帧,交换机B收到该帧后,将其从自己的所有接口转发出去。

  • 交换机A收到交换机B转发的帧后,将其从自己的所有接口转发出去。

  • 交换机C收到交换机B转发的帧后,将其从自己的所有接口转发出去。

  • 交换机C收到交换机A转发的帧后,将其从自己的所有接口转发出去。

  • 交换机A收到交换机C转发的帧后,将其从自己的所有接口转发出去。

  • 交换机B收到交换机C转发的帧后,将其从自己的所有接口转发出去。

  • 交换机B收到交换机A转发的帧后,将其从自己的所有接口转发出去。

  • 帧交换表震荡:

  • 交换机B收到主机H1发送的广播帧后,登记H1和接口1(正确)。

  • 交换机B收到交换机C转发的广播帧后,登记H1和接口2,并删除原来的记录。

  • 交换机B收到交换机A转发的广播帧后,登记H1和接口3,并删除原来的记录。

  • ……

    在这里插入图片描述



3.11虚拟局域网VLAN



(1)概述

在这里插入图片描述

在这里插入图片描述

  • 路由器默认情况下不对广播数据包进行转发,因此路由器很自然地隔离广播域。

    在这里插入图片描述

    在这里插入图片描述



(2)实现机制

  • 对交换机的要求:
  • 可以处理带有VLAN标记的帧(IEEE 802.1Q帧)
  • 各端口可以支持不同的端口类型,不同端口类型的端口对帧的处理方式有所不同



IEEE 802.1Q帧

在这里插入图片描述



交换机的端口类型

在这里插入图片描述

  • 交换机的每个端口有且仅有一个PVID。

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述



版权声明:本文为woodendeku原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。