3. 数据链路层

在这里插入图片描述

一、 概述

1. 数据链路层使用的信道

数据链路层使用的信道主要有以下两种类型:

  • 点对点信道。 这种信道使用一对一的点对点通信方式。
  • 广播信道。 这种信道使用一对多的广播通信 方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专门的共享信道协议来协调这些主机的数据发送。
2. 数据链路层的简单模型

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

二、 使用点对点通信的数据链路层

1. 数据链路和帧
1. 基本概念
  • 链路(link) : 一条无源的点到点的物理线路段,中间没有任何其他交换结点。
    注: 一条链路只是一条通路的一个组成部分。

  • 数据链路( data link) : 除物理线路外,还必须有通信协议来控制这些数据的传输。若把加实现这些协议的硬件和软件到链路上,就构成了数据链路。

    1. 现在最常用的方法是使用适配器(即网卡) 来实现这些协议的硬件和软件。
    2. 一般的适配器都包括了数据链路层和物理层这两层的功能。
  • 也有另外的术语:将链路分为物理链路和逻辑链路

    1. 物理链路就是上面说的链路
    2. 逻辑链路就是上面的数据链路,是物理链路加上必要的通信协议。
  • 早期的数据通信协议曾叫做通信规程

2. 数据链路层传输帧

在这里插入图片描述
数据链路层不必考虑物理层如何实现比特传输的细节。甚至还可以更简单的设想好像是沿着两个数据链路层之间的水平方向把帧直接发送到对方。

2. 三个基本问题

数据链路层协议有许多中,但是有三个基本问题是共同的。这三个基本问题是:

  • 封装成帧
  • 透明传输
  • 差错控制
1. 封装成帧
封装成帧就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。
  • 首部和尾部的一个重要作用就是进行帧定界。
    在这里插入图片描述
2. 透明传输
1. 概念
  • 当数据是由可打印的ASCII码组成的文本文件时,帧定界 可以使用特殊的帧定界符
  • 控制字符SOH(Start Of Header) 放在一帧的最前面,表示帧的首部开始。另一个控制字符EOT(End Of Transmission) 表示帧的结束
    在这里插入图片描述
    如果数据中的某个字节的二进制代码恰好和SOH或者EOT一样,数据链路层就会错误的找到帧的边界
    在这里插入图片描述
2. 解决透明传输问题
  • 解决方法:字节填充(byte stuffing)或字符填充(chaacter stuffing)(两者意思一样)
  • 发送端的数据链路层在数据中出现控制字符 SOH或EOT 的前面插入一个转义字符ESC(其十六进制编码是1B)
  • 接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。
  • 如果转义字符也出现在数据当中,那么应在转义字符前面插入一个转义字符ESC。当接收端收到连续两个转义字符时,就删除前面的一个。
    在这里插入图片描述
3. 差错检测
1. 概念
  • 在传输过程中可能会产生比特差错: 1可能会变成0,0可能会变成1
  • 在一段时间内,传输错误的比特占所传比特总数的比率称为误码率BER(Bit Error Rate)
  • 误码率与信噪比有很大的关系。
  • 为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。
2. 循环冗余检验的原理
  • 在数据链路层传送的帧中,广泛使用了循环冗余检验CRC 的检错技术。
  • 发送端 ,先把数据划分为组。假定每组K个比特
  • 假设带传送的一组数据M = 101001(当前K=6) .我们在M的后面再添加供差错检测用的n位冗余码一起发送。
    在这里插入图片描述
3. 冗余码的计算
1. 在M后面添加n个数字0
2. 得到的(K+n)位的数除以事先选定好的长度为(n+1)位的除数P,得到的商是Q,而余数是R,余数R比除数P少一位,即R是n位。

在这里插入图片描述
接收端对收到的每一帧进行CRC检验:

  • 若得出的余数R = 0,则判断这个帧没有差错,就接受。
  • 若余数R != 0,则判定这个帧有差错,就丢弃。

只要经过严格的挑选,并使用位数足够多的除数P,那么检测不到差错的概率就会小很多。

三、点对点协议PPP

1. 概念
  • 对于点对点的链路,目前使用最广泛的数据链路层协议是点对点协议PPP(Point-to-Point Protocol) .
  • 用户使用拨号电话线接入互联网时,用户计算机和ISP进行通信时所使用的数据链路层协议就是PPP协议。
  • PPP协议在1994年就称为互联网的正式标准。
    在这里插入图片描述
2. PPP协议应满足的需求
  • 简单:首要要求。
  • 封装成帧:规定特殊的字符作为帧定界符。
  • 透明性:保证传输数据的透明性。
  • 多种网络层协议:能够在同一层物理链路上同时支持多种网络层协议。
  • 多种类型链路:能够在多种类型的链路上运行。
  • 差错检测:能够对接受端收到的帧进行检测,并立即丢弃有差错的帧。
  • 检测连接状态:能够及时自动检测出链路是否处于正常工作状态。
  • 最大传送单元:必须对每一种类型的点对点链路设置最大传输单元MTU的标准默认值,促进各种实现之间的互操作性。
  • 网络层地址协商:必须提供一种机制使通信的两个网络层地址实体能够通过协商知道或能够配置彼此的网络层地址。
  • 数据压缩协商:必须提供一种方法来协商使用数据压缩算法。
3. PPP协议的组成
  1. 一个将IP数据报封装到串行链路的方法。PPP即支持异步链路(无奇偶校验的8比特数据),也支持面向比特的同步链路。IP数据报在PPP帧中就是其信息部分。这个信息部分的长度受最大传送单元MTU的限制。
  2. 一个用来建立、配置和测试数据链路连接的链路控制协议LCP(Link Control Protocol)
  3. 一套网络控制协议NCP(Network Control Protocol),其中的每一个协议支持不同的网络层协议。
4. PPP协议的帧格式
  • PPP帧的首部和尾部分别为4字段和2字段。
    在这里插入图片描述
  • 标志字段(定界符):首部的第一个字段和尾部的第二个字段都是标志字段F(Flag),规定为0x7E(符号0x表示16进制,7E用二进制表示为01111110).标志字段表示一个帧的开始或结束。
  • 首部中的地址字段A规定为0xFF(即11111111),控制字段C规定为0x03(即00000011).
  • 首部的第四个字段是2字节的协议字段。当协议字段为0x0021时,PPP的帧信息字段就是IP数据报;若为0xC021,则信息字段就是PPP链路控制协议LCP的数据;而0x8021表示这是网络层的控制数据。
  • 信息字段的长度是可变的,不超过1500字节。
  • 尾部中的第一个字段是使用CRC的帧检验序列FCS
5. 透明传输问题
1. 方法
  • 当PPP用在同步传输链路时,协议规定采用硬件来完成比特填充(和HDLC做法一样)
  • 当PPP用在异步传输时,就使用一种特殊的字符填充法。
2. 字符填充
  • 将信息字段中出现的每一个0x7E字节(定界符)转变为2字节序列(0x7D,0x5E)。
  • 若信息字段中出现一个0x7D的字节,则将其转变称为2字节序列(0x7D,0x5D)。
3. 零比特填充

PPP协议用在SONET/SDH链路时,使用同步传输(一连串的比特连续传送)。这时PPP协议采用零比特填充 方法来实现透明传输。

  • 在发送端,只要发现有5个连续的1,则立即填充入一个0.
  • 接收端对帧的比特流进行扫描。每当发现5个连续的1时,就把这5个连续1后的一个0删除。
6、 PPP协议的工作状态

在这里插入图片描述

四、使用广播信道的数据链路层

1. 局域网的数据链路层
(1) 概念
  • 局域网最主要的特点:网络为一个单位所拥有,且地理范围和站点数目均有限。

  • 局域网具有以下优点:

    1. 具有广播功能,从一个站点可以很方便的访问全网。局域网上的主机课共享连接在局域网上的各种硬件和软件资源。
    2. 便于系统的扩展和逐渐的演变,各设备的位置可以灵活调整和改变。
    3. 提高了系统的可靠性、可用性和共存性。
  • 局域网的拓扑结构
    在这里插入图片描述

  • 局域网的传输媒体
    局域网可使用多种传输媒体。双绞线已成为局域网中的主流传输媒体。当数据率很高时,往往需要光纤作为传输媒体。

共享信道如何让使众多用户能够合理而方便的共享通信媒体资源?主要有两种方法:

  • 静态信道划分: 如频分复用、时分复用、波分复用、码分复用等。用户只要分配到了信道就不会和其他用户发生冲突。但代价较高,不适合局域网使用。
  • 动态媒体接入控制: 又称为多点接入,其特点是信道并非在用户通信时固定分配用户。又可以分为一下两类:
    1. 随机接入 :特点是所有的用户可以随机的发送信息。但是共享媒体上可能会发生碰撞,使得用户的发送都失败。因此,必须要有解决碰撞的网络协议。
    2. 受控接入: 特点是用户不能随机的发送信息而必须服从一定的控制。这类的典型代表有分散控制的令牌环局域网和集中控制的多点线路探询或称为论询。受控接入使用较少,本节不再讨论。
(2) 以太网的两个标准
  • DIX Ethernet V2 是世界上第一个局域网产品规约。
  • IEEE 802.3 是第一个IEEE的以太网标准
    为了使数据链路层能更好的适应多种局域网标准,IEEE 802 委员会就将局域网的数据链路层拆成两个子层。
    1. 逻辑链路控制LLC子层
    2. 媒体接入控制MAC子层
    与接入到传输媒体有关的内容都放在MAC子层,而LLC子层则与传输媒体无关。
    在这里插入图片描述
    在这里插入图片描述
(3)适配器的作用
网络接口板又称通信适配器或网络接口卡,或网卡

通信适配器上面装有处理器和存储器(包括RAM和ROM)。适配器的功能包含了数据链路层和物理层这两个层次的功能。
适配器的重要功能:

  • 进行串/并行转换:适配器与局域网之间串行传输,而适配器和计算机I/O总线是并行传输方式进行的。
  • 对数据进行缓存:网络上的数据率和计算机总线上的数据据率并不相同。
  • 在计算机的操作系统安装驱动程序
  • 实现以太网协议
    在这里插入图片描述
2. CSMA/CD协议
(1)概念

最初的以太网是将许多计算机都连接到一根总线上。在这里插入图片描述

  • 总线上每一个工作的计算机都能检测到B发送的数据信号。
  • 由于只有计算机D的地址与数据帧首部写入的地址一致,因此只有D才接收这个数据帧。
  • 其他所有的计算机检测倒不是发送个他们的数据帧,就丢弃这个数据帧。
  • 在具有广播特性的总线上实现了一对一的通信。
(2)以太网采取的两种重要措施

为了通信的简便,以太网采取了两种重要的措施:

  1. 采用较为灵活的无连接的工作方式
    • 不必先建立连接就可以直接发送数据
    • 对发送的数据帧不进行编号,也不要求对方发回确认。
    • 以太网提供的服务是不可靠的交付,即尽最大努力的交付。
  2. 以太网发送的数据都使用曼彻斯特编码

在这里插入图片描述

(3)CSMA/CD协议
  • CSMA/CD含义:载波监听多点接入/碰撞检测
  • 多点接入表示许多计算机以多点接入的方式连接在一根总线上。
  • 载波监听是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有则暂时不发送数据,以免发生碰撞。
  • 总线上并没有载波。载波监听就是用电子技术检测总线上有没有其他计算机发送数据信号
  • 碰撞检测就是计算机边发送数据边检测信道上的信号电压大小。

在这里插入图片描述

(4) CSMA/CD的重要特性
  • 使用CSMA/CD协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)
  • 每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
  • 这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。
(5) 争用期
  • 最先发送数据帧的站,在发送数据帧后至多经过时间 2 tao (两倍的端到端往返时延)就可知道发送的数据帧是否遭受碰撞
  • 以太网的端到端往返时延2 tao 称为争用期,或碰撞窗口
  • 经过争用期这段时间没有检测到碰撞,才能肯定这次发送不会发生碰撞。
(6)二进制指数类型退避算法
  • 发生碰撞的站在停止发送数据的时候,要推迟一个随机时间才能再发送数据。
  • 基本退避时间为争用期2tao
    在这里插入图片描述
(7)争用期的长度
  • 10Mbit/s以太网取51.2μs为争用期的长度
  • 对于10Mbit/s以太网,在争用期内发送512bit,即64字节。
  • 这意味着,以太网在发送数据时,若前64字节没有发生冲突,则后续的数据就不会发生冲突
(8)最短有效帧长
  • 如果发生冲突,就一定是在发送的前64字节之内
  • 以太网规定了最短有效帧长为64字节,凡长度小于64字节的帧都是由于冲突而异常中止的无效帧
(9) 强化碰撞

当发送数据的站一旦发现发生了碰撞:

  • 立即停止发送数据
  • 继续发送若干比特的人为干扰信号,以便让所有的用户都知道发生了碰撞
(10)CSMA/CD协议的要点
  • 准备发送前先检测信道。
  • 检测信道:若检测到信道忙则不停的检测信道,一直等待信道转为空闲。若检测到信道空闲,并在96比特时间内信道保持空闲(保证了帧间最小间隔),就发送这个帧。
  • 检查碰撞:在发送过程中仍不停的检测信道,即网络适配器边发送边监听。这里只有两种可能性:
    在这里插入图片描述
  • 总结:先听再发,边听边发,冲突停止,延迟重发。
3. 使用集线器的星形拓扑

使用集线器的以太网在逻辑上仍然是一个总线网,各工作站使用的还是CSMA/CD协议,并共享逻辑上的总线。
集线器很像一个多接口的转发器,工作在物理层。
在这里插入图片描述

4. 以太网的信道利用率

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

5. 以太网的MAC层
(1)MAC层的硬件地址
  • 在局域网中,硬件地址又称为物理地址,或MAC地址
(2) 适配器检查MAC地址
  • 适配器从网络上每收到一个MAC帧就首先用硬件检查MAC帧中的MAC地址。
    1. 如果是发往本站的帧则收下,然后再进行其他的处理。
    2. 否则就将此帧丢弃,不再进行其他的处理。
  • 发往本站的帧包括以下三种帧:
    1. 单播帧:一对一
    2. 广播帧:一对全体
    3. 多播帧:一对多
  • 所有适配器都至少能够识别前两种帧,即能够识别单播地址和广播地址。
  • 混杂方式 工作的以太网适配器只要听到有帧在以太网上传输就都接收下来。
(3) 以太网V2的MAC地址

在这里插入图片描述
无效MAC帧:

  • 数据字段的长度与长度字段的值不一致
  • 帧的长度不是整数个字节
  • 用收到的帧检验序列FCS查出有差错
  • 数据字段不在46~ 1500字节之间(有效的MAC帧长度为64~1518字节之间)

帧间最小间隔:

  • 帧间最小间隔为9.6μs,相当于96bit的发送时间
  • 一个站在检测到总线开始空闲后,还要等待9.6μs才能发送数据,这样做目的为使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。

五、扩展的以太网

1. 在物理层扩展以太网
(1)使用光纤扩展

在这里插入图片描述

(2) 使用集线器扩展

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

  • 优点:使原来属于不同碰撞域的以太网上的计算机能够进行跨碰撞域的通信。扩大了以太网覆盖的地理范围。
  • 缺点:碰撞域增大了,但总的吞吐量并未提高。如果不同的碰撞域使用不同的数据率,那么就不能用集线器将他们互连起来。
2. 在数据链路层扩展以太网
  • 扩展以太网更常用的方法是在数据链路层进行。
  • 早期使用网桥,现在使用以太网交换机。
    在这里插入图片描述
(1)以太网交换机的特点
  • 以太网交换机实质上就是一个多借口的网桥
  • 每个接口都直接与一个单台主机或另一个以太网交换机相连,并且一般都全双工工作
  • 以太网交换机具有并行性
  • 相互通信的主机都是独占传输媒体,无碰撞的传输数据。
  • 以太网交换机的接口有储存器,能在输出端繁忙时把到来的帧进行缓存。
  • 以太网是一种即插即用的设备,内部的帧交换表通过自学习算法自动建立起来的。
  • 优点:
    在这里插入图片描述
(2)以太网交换机的交换方式
  • 存储转发:把整个数据帧先缓存后再进行处理。
  • 直通方式:接受数据帧的同时就立即按数据帧的目的MAC地址决定该帧的转发接口,因而提高了帧的转发速度。
(3)交换机的自学习功能

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
生成树协议:
在这里插入图片描述
在这里插入图片描述

3. 虚拟局域网

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值