【计算机网络Part 2】数据链路层

      最后更新:2022-07-05 02:48:25 手机定位技术交流文章

      文章目录

      • 数据链路层
        • 数据链路层概述
        • 数据链层三个重要问题
          • 封装成帧
          • 差错检测
          • 可靠传输
            • 可靠传输执行机制-停工协议 SW
            • 可靠传输实现机制-返回N框架协议GBN
            • 可靠传输的实施机制-选择再传输协议 SR
        • 点对点协议PPP
          • 框架包装、错误检测和可靠的PP协议传输
          • PPP协议工作状态
        • 媒体访问控制(MAC)
          • 静态划分信道
          • 动态接入控制
            • CSMA/CD协议
            • CSMA/CA协议
        • MAC地址、IP地址和ARP协议
          • MAC地址
            • IEE 802 MAC地址格式
            • MAC地址的类型
          • IP地址
            • 数据包传输期间IP地址和MAC地址的变化
          • ARP协议
        • 集线器与交换机
          • 集线器
          • 交换机
          • 连接器与开关之间的区别
        • 虚拟以太网VLAN
          • 虚拟域网VLAN实现机制
        • 习题
          • 可靠传输
          • 静态划分信道
          • CSMA/CD
          • CSMA/CA协议
          • MAC地址
          • 集线器与交换机

      在这里插入图片描述

      不管是你在大学还是在找工作,计算机网络都是学习的一部分。本文以湖南科技大学计算机网络课程为基础,整理所得。你可以用这个说明作为课程的补充,如果你还没有看过课程,我也建议你继续往下看。⭐码字不易,求个关注⭐

      数据链路层

      数据链路层概述

      链:从一个节点到邻接的节点的物理链,没有其他中间的交换节点。
      数据链:指实现通信协议的硬件和软件被添加到链上,并形成数据链。
      数据链层在帧单元中传输和处理数据.

      • 使用点到点通道的数据链层
        有三个重要的问题: 构架 、 错误检测和可靠的传输.
      • 使用广播频道的数据链层
        共享LAN可能遇到数据碰撞,可以通过使用CSM/CD(Ethernet媒体访问控制协议)来解决。
      • 无线局域网
        802.11 LAN避免数据碰撞,并使用CSM/CA协议解决这个问题。

      数据链层三个重要问题

      封装成帧

      数据链层将帧头和帧尾添加到向顶层交付的协议数据单元,使其成为帧。

      • 帧定界
        框架头和尾部包含重要的控制信息,框架头和尾部的功能之一是框架边界
        PP框架定义框架的开端和尾端:
        在这里插入图片描述
        当在Ethernet V2上为MA帧定义时,必须添加一个预导体,每个帧间隔(96位时间)为:
        在这里插入图片描述

      • 透明传输:意味着数据链层对向上层传递的数据没有限制(即使控制字符在帧数据中,也不会进行处理)。
        面向物理的字符串导向网络利用字符串填充(或所谓的字符串填充)方法实现透明传输。
        换句话说, 控制字符的前面是语义字符 ESC.
        咬合式物理链通过咬合方式实现透明的传输。
        例如,每5个1后加一个0。

      • 帧的传输效率
        为了提高帧传输效率,帧的数据部件的长度应尽可能大。 每个数据链层协议指定帧的数据部件的最大长度。

      差错检测

      真正的通信链并不理想,而且位子在传输过程中会造成错误,这叫做位子错误。
      在一段时间内,传输误差的比特与传输总数的比特的比特比例被称为误差系数( error coefficient)。
      使用误差检测代码检测传输过程中是否出现位数误差是数据链层解决的重要问题之一。
      错误检测代码(FCS)如下:
      在这里插入图片描述

      这里有两种错误检测方法:

      • 奇偶校验
        在数据发送后,添加一个奇点检查,使数据中的"1"的数目奇(双重检查)或甚至(双重检查)。
      • 循环冗余检查(CRC)
        首先,接收方和发送方都同意生成多项式。
        然后发送者计算任务误差检测代码(冗余代码)并将其添加到发送的数据背面。
        最后, 接收器计算了盈余, 错误代码为零.
        循环冗余检查的计算:
      1. 不包括发送或接收的信息。
      2. 分解是一个由多项式的系数组成的 bit string 。
      3. 做除法(异或运算)
      4. 检查余数。

      冗余的计算:
      在这里插入图片描述
      判断是否误码:
      在这里插入图片描述

      可靠传输

      • 出现的传输差错
        位错只是传输错误之一,一般包括群体损失、群体失调和群体重复。
        这些传输错误通常不会发生在数据链层,而是在顶层。因此,可靠的传输服务并不局限于数据链层,而是可以由其他层实现。

      通过误差检测技术,接收器数据链层可以检测帧在传输过程中产生的误差码,然后对特定操作进行检测,并查看顶层数据链层提供的服务类型。
      不可靠的传输服务: 只是抛出错误代码的帧,别做别的事.
      可靠的传输服务: 设法了解发送者发送的是什么和接收者能接收的什么.
      在这里插入图片描述

      一般而言,线性链的误差率很低,并不需要数据链层升级来提供可靠的传输服务。
      介绍了三种可靠的传输实现机制:三种可靠的传输实现机制的基本原理不局限于数据链层,可应用于计算机网络架构的各个层协议。

      可靠传输执行机制-停工协议 SW

      • 停止等待协议
        停止等待协议主要包括以下四个情况:
        在这里插入图片描述
        确认(没有错误)和否认:接收数据后,接收器将发送接收到的ACK组确认。 对于具有较高的错误率的点点链,当接收器在数据子集中检测错误代码时,接收器会发送NAC子集(deny子集)。
        超时再传输:如果数据子集丢失,ACK/NAK子集不会迟到。
        确认丢失:如果ACK组丢失,则会执行超时再传输,最终将丢弃发送的数据。 应小心选择超时计时器设置的再传输时间。 通常比"从发送者到接收者平均返回时间"稍大

      为了接收器确定接收的DATA子集是否重复,需要数据子集代码。
      为了使发送者确定收到的ACK分组是否重复,需要提供ACK子组号,使用的比特数量与数据子集代码中使用的比特数量相同。数据链层实现一个停止等待协议,不需要分配给ACK子集代码。因为数据链层通常没有集群延迟。

      • 停止使用渠道等待协议
        在这里插入图片描述
        通道利用率 = TD/TD(发送数据帧时延) + RTT(返回时延)。
        当环程延迟RTT比数据帧延迟TD大得多时,通道利用率非常低,另外两个协议出现。

      • 问:你的意思是停止等待协议?
        停止等待协议是实现可靠的传输,它的基本原则是停止在每个分组的末端发送。等待对方确认。在收到确认后重复下一个分组;在停止等待协议中,如果收件人收到重复子集,就丢弃该分组,但同时发送确认。它主要涵盖以下情况: 没有错误 、 错误发生 ( 超时转播 ) 、 确认损失和确认延迟 。

      可靠传输实现机制-返回N框架协议GBN

      在这里插入图片描述

      • 说你懂ARQ协议吗?
        自动再传输协议ARQ:在协议中停止等待超时再传输意味着没有得到超过一段时间的确认,重发先发送的组件(认为先发送的组件已经丢失)。因此,每次派出一个子组时,必须设置一个超时计时器,它的重传输时间应该比分组数据的平均重传输时间长。这种自动再传输方法常被称为自动再传输请求ARQ。
        连续ARQ协议(返回N帧协议): 连续ARQ协议可以改善通道使用.发送者维护发送窗口,在发送窗口中的任何子组都可以连续发送出去,你不需要等待确认。接收者通常使用累积确认,将确认发送给最后一个到达的小组,指示所有子组都收到到这个子组的正确信息

      可靠传输的实施机制-选择再传输协议 SR

      在这里插入图片描述

      发送者维护发送窗口,凡是位于发送窗口内的分组都可以连续发送出去,不需要等待对方确认。接收方可接受未按序到达且落在窗口内的分组,并且进行逐一确认。

      点对点协议PPP

      point-to-point协议是最广泛使用的 point-to-point数据链层协议。
      在这里插入图片描述

      PP协议为在点对点链上传输各种协议数据报告提供标准的方法,主要由以下三个部分组成:
      一套网络控制协议(NCP),每个协议都支持不同的网络层协议。
      在这里插入图片描述

      框架包装、错误检测和可靠的PP协议传输

      • 封装成帧:
        帧格式
        在这里插入图片描述

      • 透明传输
        在这里插入图片描述

      1. 节点非同步链:节点填充方法,插入翻译字符。 如图所示:
        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q0TIht0L-1656924863929)(en-resource://database/875:1)]

      2. 基于位元的同步链:位元填充方法,在每5个1位元数据之后插入0位元(以区分它与帧的第一个部分)。
        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T1zGfF5l-1656924863930)(en-resource://database/877:1)]

      • 可靠的传输和错误检测:
        每个接收器接收一个PP帧,并执行CRC测试。 如果CRC检查正确,这个帧被删除,如果没有,则被丢弃。

      PPP协议工作状态

      LCP(Chain Control Protocol)和NCP(Network Control Protocol)使用。
      在这里插入图片描述

      媒体访问控制(MAC)

      在共享频道中考虑的问题之一是如何协调共享传输媒体(即媒体访问控制 MAC)的多个发送和接收站的工作
      在这里插入图片描述

      多种方法可以用于解决媒体访问控制问题,例如静态通道分离或动态访问控制。

      静态划分信道

      重用是指使用物理线同时传输多个用户信号,以充分利用传输媒体的带宽。

      • 频分复用FDM
        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uyfEJzh4-1656924863931)(en-resource://database/983:1)]
        所有频率子完成器的用户同时占有不同的带宽资源进行同时通信。

      • 时分复用TDM
        在这里插入图片描述
        所有重复的用户在不同的时间使用相同的带宽。

      • 波分复用WDM
        在这里插入图片描述

      • 码分复用CDM
        CDM主要用于多站点访问,更常用作CDMA(code-shared multi-site access)。
        多址和重用的概念没有严格区分。

      多址:多点访问,处理用户动态分配渠道,在临时占用渠道的应用中是必不可少的,所有移动通信系统基本上都受此影响。
      重复:单个媒体的带宽资源被分成多个独立的子通道,并且不会相互干涉。
      FDMA、TDMA和CDMA分别可以视为FDM、TDM和CDM应用程序。

      每个使用CDMA的站点最初分配了一个m位芯片序列。
      如果一个站发送1位元,它发送自己的m位元序列,如果它发送0位元序列,它发送自己的m位元序列编码。

      芯片序列的选择原则:

      1. 分配给每个站的芯片序列必须不同,并且实际上使用伪随机代码。
      2. 分配给每个站的芯片组序列必须是相互的(两个向量指定的内在值是0)。
      • 应用
        A、B站同时发送信号,D如何确定接收信号是A还是B的?
        A发送1位元,向A站发送自己的编码卡,而B发送0位元,向B站发送自己的编码卡的逆码。 D使用Ax(接收信号)表示A接收的信号,结果是A发送的。
        在这里插入图片描述

      动态接入控制

      在宽带网络中使用的协议是CSM/CD协议和CSM/CA协议中使用的无线协议。
      以前的CSM/CD协议被用于各种宽带Ethernet。 目前的Ethernet基于一个开关和完全双重连接,没有碰撞,因此不需要使用CSM/CD协议。

      CSMA/CD协议

      载体监控多点访问/碰撞检测协议

      • 多址通道 MA: 多个车站连接在一个单车上, 竞争使用公共汽车.

      • 加载监视CS:每个车站必须在发送前检查,看看是否有其他车站在车上,然后发送帧。 如果车站忙,继续检测并等待车站变为 96bit 闲置,然后发送这个帧。

      • 碰撞检测CD:每个帧都与检测一起发送(侧边听)。如果发生冲突,立即停止发送,等待随机时间,然后再发送。

      • 争用期
        因此,以太网的端到端和端到端传输间的延迟为争端期间或碰撞窗口(t:以太网单线的端到端传输延迟)

      • 最小帧长
        Ethernet的最小帧长度确保主机可以在帧完成之前检测帧发送过程的碰撞。
        Ethernet 提供 64 字节 的 最小 帧 长度, 即 512 字节 ( 传输 时间 512 字节 是 争端 期间 ) 。
        如果一个帧被发送,并且比赛期间后未发现碰撞,则必须说明发送中没有发生碰撞;
        如果接收的帧长度低于64字节,则表示它是由于碰撞而异常终止的无效帧。

      • 最大帧长
        数据负载最大1500字节。
        在这里插入图片描述

      • 中断二进制指数回避算法
        如果发生多个碰撞,这表明可能有更多的竞争者。 使用回避算法,再传输需要延迟的平均时间随着再传输的数量增加(动态回避),从而降低了碰撞的概率。
        如图所示:(吸收时间 = 基本吸收时间 2t x 随机数 r)
        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-weHxV8ao-1656924863932)(en-resource://database/1666:1)]
        十次碰撞后,随机数值在0到1023之间稳定。

      • 信道利用率
        发送一个帧占总线时间的T0(帧本身的发送时间) + t(单链端到端传输时间的延迟)。
        以下图示了最大通道利用率:
        在这里插入图片描述

      • 帧发送/接收流程
        Frame Sending: First loading wave surveillance – collision detection – detection processing (e.g. avoidance algorithm).
        在这里插入图片描述
        帧接收:确认帧长度-确认MAC地址-确认CRC错误代码
        在这里插入图片描述

      CSMA/CA协议

      载体监控多点访问/避免碰撞协议

      在802.中,在11个无线宽带网络中,CSM仍然可以使用,即在发送帧之前首先听见传输媒体。
      然而,由于硬件需求非常高,并且可能存在屏蔽站问题,因此在无线宽带网络中使用CD是不可能的,因此碰撞检测并不有意义。
      在这里插入图片描述
      无线LAN使用CSM/CA协议将碰撞检测CD转换为碰撞回避CA。 由于所有碰撞都无法避免,无线通道的误差率很高,所以数据链层确认机制(停止等待协议)也被用于确保数据被正确接收。

      802.MAC层11定义了两个媒体访问控制方法:

      1. 分布式协调功能DCF:没有中央控制站,每个站使用CSM/CA协议通过争议通道获取传输权。
      2. 点协调功能PCF.使用集中控制访问算法(可选)
      • 帧间间隔IFS
        802.标准11规定,所有站点必须能够在连续检测空通道后发送帧,称为帧间隔IFS。
        帧间隔的长度取决于发送的帧类型,优先等待时间较短,反之亦然。
        通常的两个帧间隔如下:
        短帧间隔SIFS和DCF帧间隔DIFS
        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hejW23Z5-1656924863935)(en-resource://database/1011:1)]

      • CSMA/CA协议工作原则
        在这里插入图片描述

      • CSMA/CA协议回避算法
        当执行回避算法时,网站为回避计时器设置了随机回避时间:
        当逆计时器的时间减少到0时,数据开始发送。
        当逆计时器的时间没有减少到0时,该频道处于繁忙状态,将逆计时器值冻结,等待该频道空时,并在DIF时间之后继续启动逆计时器。
        退避算法图示:
        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0KtXd4VZ-1656924863936)(en-resource://database/1017:1)]

      • 信道预约
        为了尽量减少碰撞的概率,802.标准11允许各站发送数据,以便为该频道进行预约。
        主要说明如下:
        在这里插入图片描述
        图解:
        在这里插入图片描述

      • 虚拟载波监听
        除了RTS框架和CTS框架之外,数据框架也带有通信所需的时间,称为 802.11虚拟载体监视。
        由于使用虚拟载体监视机制,车站只需要对任何RTS帧、CTS帧或数据帧进行监视,才能知道该频道占用时间,而不需要对该频道的信号进行实际监视,因此,虚拟载体监视机制可以减少频率关闭车站所引起的碰撞问题。

      MAC地址、IP地址和ARP协议

      MAC地址属于数据链层。
      IP地址和ARP协议属于TCP/IP架构的网络层,但它们与MAC地址有一定关系。

      MAC地址

      MAC地址是Ethernet的MAC子网所使用的地址。 当多个主机在广播频道上连接,以便在两个主机之间通信时,每个主机必须有一个唯一的标识符,这就是数据链层地址。
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-U1PKBDz1-1656924863938)(en-resource://database/1035:1)]

      因此,由主机发送的帧必须载有发送者和接收主机的地址,因为这些地址属于媒体访问控制 MAC,因此这些地址被称为 MAC地址(物理地址、硬件地址)。

      注意:MAC地址通常嵌入网络卡的EEPROM中。 严格地说,MAC地址是网络上的唯一识别器,而不是网络上的唯一识别器。

      IEE 802 MAC地址格式

      共六字节,48位。

      在这里插入图片描述

      MAC地址的类型

      单播MAC地址:
      在这里插入图片描述

      广播MAC地址FF-FF-FF-FF-FF:
      在这里插入图片描述

      多播 MAC地址(第一个字符串的16位元的第一四个位元不能分解为2位元,即多播地址1,3,5,7,9,B等):
      在这里插入图片描述

      IP地址

      IP地址是互联网上的主机和路由器用来识别信息的两个部分的地址:

      • 网络编号: 识别数百万的互联网网络.
      • 主机代码:识别同一网络上的不同主机(或路由器的端口)
        如图所示:
        在这里插入图片描述

      数据包传输期间IP地址和MAC地址的变化

      使用IP地址和MAC地址可以从网络架构中看到:
      在这里插入图片描述

      在包传输过程中,源IP地址和目标IP地址保持不变;而源 MAC地址和目标 MAC地址在链路(或网络)中逐步改变。
      图中显示了IP地址和MAC地址的变化:
      在这里插入图片描述

      ARP协议

      在这里插入图片描述
      当B发送一个包到C时,B知道C的IP地址,但B不知道C的MAC地址,因此当数据链层封装MAC帧时,B无法填补目标MAC地址。
      在此情况下,必须通过地址分析协议ARP获取C主机的MAC地址。

      每个主机都有ARP高速缓存表,当主机B发送数据包到主机C时,首先,C主机的IP地址——MAC地址(目标地址)——在其自己的ARP高速缓存表中搜索。如果没有相应的IP地址,主机B将发送ARP请求消息(附于广播MAC帧):
      在这里插入图片描述

      然后C主机发送ARP响应消息(包含在单播MAC帧):
      在这里插入图片描述

      主机B将C的IP地址置入ARP高速缓存中。

      ARP的行动范围:用于逐步链路或网络中。
      除了ARP请求和相应的请求,ARP还包含其他类型的讯息(例如检查IP地址冲突的无效ARP、免费ARP等);ARP没有安全验证机制,并且存在ARP欺诈(攻击)问题。

      集线器与交换机

      集线器

      1. 集合器使用的Ethernet逻辑上仍然是一个总线网络,每个站点共享总线资源,每个主机使用CSM/CD协议。
      2. 收集器只在物理层上工作,每个接口简单地传输位子而不检测碰撞。
      3. 总的来说,装配器具有较少的误差容忍和网络管理能力。

      交换机

      在这里插入图片描述

      1. 以太网交换机通常有多个接口,每个接口连接到一个主机或交换机,并且在完全双重模式下工作。
      2. 多个接口可以同时连接,使得多个主机可以同时通信,而不发生碰撞。
      3. 它在数据链层(包括物理层)中工作,接收帧,在帧交换表中搜索帧为帧的MAC地址的相应接口数,然后通过该接口传输帧。
      4. 它是一种瞬时联接设备,内部帧交换表由自学习算法构建。
      5. 帧传输有两种方式:存储传输和直接交换(基于硬件交叉矩阵)。
      • 以太网交换机的自学习和帧传输过程

      网络交换机通过自学习算法逐步建立帧交换表,从而成为一种瞬时设备。
      每个Ethernet帧交换表中的记录都有其本身的有效时间,它在删除时终止。

      以太网交换机的自我学习和传输过程如下:

      1. 交换机接收帧并将其注册为帧的源 MAC地址和输入交换机的接口号码。
      2. 根据帧 MAC地址和交换机的帧交换表的目的,将检查表转移到帧,有三个条件:
      • 直接传输: 交换机知道应该使用哪些接口来传输帧.
      • 盲传输:交换机不知道从哪个接口传输帧,它只能将它们全部转移
      • 显然丢弃:交换机知道它不应该发送帧并丢弃它。
      • 为Ethernet交换机生成树协议STP

      当链路失败时,增加冗余链路可以提高Ethernet的可靠性,但它也会产生相应的问题:

      • 广播风暴
      • 主机收到重复广播帧
      • 交换机框架交换机摇摆

      使用生成树协议STP用于Ethernet交换机,可以添加冗余链来提高网络可靠性,同时避免网络环引起的问题。
      使用Ethernet生成树协议:

      1. 不管开关之间使用什么物理连接,开关可以自动计算和构造一个没有逻辑环的网络,其拓扑结构必须有树形。
      2. 结果的树逻辑拓扑确保整个网络是连接的。
      3. 当第一个连接开关或网络物理拓扑发生变化时,开关将重新计算生成的树。

      连接器与开关之间的区别

      区别一:
      在单播中,接收机只传输位数,交换机可以找到目标MAC地址的相应接口号码,然后通过接口传输帧。
      如图所示:
      在这里插入图片描述

      区别二:
      当连接两个与HUB连接的星型网络时,HUB放大广播域并同时扩大碰撞域。
      如图所示:
      在这里插入图片描述

      虚拟以太网VLAN

      随着交换网的扩充,广播区域也相应地扩大,巨大的广播区域带来了许多不利因素:广播风暴,难以维护和管理,潜在的安全问题等。
      广播域的分离有两种方式:使用路由器和使用虚拟LAN技术。

      虚拟区域网络(英语:Virtual Local Area Network,缩写为VLAN)是一种逻辑聚类技术,它将本地区域网络内的设备分成独立于物理位置的组,并具有一定的共同要求。
      如图所示:
      在这里插入图片描述

      虚拟域网VLAN实现机制

      基于IEE802的虚拟LAN实现有两种方式:1Q帧和开关端口类型

      • IEE 802.1Q框架:
        IEE 802.1Q帧被扩展到Ethernet的MAC帧,插入四位元VLAN标签。
        在这里插入图片描述

      最后12位的VLAN标识符称为VLAN标识符VID,这些是唯一能识别以太网属于哪个VLAN的标识符。
      802.1Q帧由开关处理,而不是由用户主机处理。 当交换机接收一个普通的Ethernet帧时,在四个字节中插入的VLAN标签被转换为802.1Q帧。

      • 交换机的端口类型:
        这些开关有三个端口: Access 、 Trink 和 Hybrid 。
        每个开关端口缺失的VLANID在Huawei开关上称为PVID。
        [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7aqNRVwk-1656924863945)(en-resource://database/1089:1)]

      习题

      可靠传输

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T4tQriK3-1656924837976)(en-resource://database/1624:1)]

      静态划分信道

      在这里插入图片描述

      CSMA/CD

      在这里插入图片描述
      在这里插入图片描述

      CSMA/CA协议


      在这里插入图片描述

      MAC地址

      在这里插入图片描述

      集线器与交换机

      在这里插入图片描述

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/29260.html

          热门文章

          文章分类