计算机网络 - 数据链路层

计算机网络第三章数据链路层

    • 一:概述及功能
      • 1.1概述
      • 1.2功能
    • 二:组帧
      • 2.1 封装成帧
      • 2.2 组帧的四种方法
    • 三:差错控制
      • 3.1 噪声的分类
      • 3.2 差错
      • 3.3 差错控制
        • 3.3.1 奇偶校验码
        • 3.3.2 循环冗余码(CRC)
        • 3.3.3 海明码 (纠错编码)
    • 四:流量控制与可靠传输机制
      • 4.1 流量控制
          • 4.1.1 停止 - 等待 协议
          • 4.1.2 滑动窗口协议
            • 4.1.2-1 后退N帧协议 GBN
            • 4.1.2-2 选择重传协议 SR
          • 4.1.3 可靠传输、滑动窗口、流量控制
    • 五:介质访问控制
      • 5.1 信道划分介质访问控制
          • 5.1.1 频分多路复用 FDM
          • 5.1.2 时分多路复用 TDM
          • 5.1.3 改进的时分复用 --统计时分复用 STDM
          • 5.1.4 波分多路复用 WDM
          • 5.1.5 码分多路复用 CDM
      • 5.2 随机访问介质访问控制
          • 5.2.1 ALOHA 协议 (不听就说)
            • 5.2.1.1 纯ALOHA协议
            • 5.2.1.2 时隙ALOHA协议
          • 5.2.2 CSMA协议 (先听再说)
          • 5.2.3 CSMA/CD协议 (先听再说,边听边说)(重点)
          • 5.2.4 CSMA/CA协议
      • 5.3 轮询介质访问控制
          • 5.3.1 轮询协议
          • 5.3.2 令牌传递协议
    • 六:局域网
      • 6.1局域网拓扑结构:
      • 6.2局域网传输介质:
      • 6.3局域网介质访问控制方法:
      • 6.4 局域网分类:
      • 6.5 以太网:
    • 七:广域网
      • 7.1 PPP协议 :
      • 7.2 HDLC协议 :
      • 7.3 PPP 协议 && HDLC协议 异同点:
    • 八:链路层设备

一:概述及功能

1.1概述

结点: 主机、路由器
链路:::网络中两个结点之间的物理通道 有线链路 无线链路
链路的传输介质:

  • 双绞线
  • 光纤
  • 微波

数据链路::网络中两个结点之间的逻辑通道,把实现控制数据传输协议的硬件和软件加到链路上就构成数据链路
帧:链路层的协议数据单元,封装网络层数据报
数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报

1.2功能

数据链路层在物理层提供服务的基础上向网络层提供服务
主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路,使其对网络层表现为一条无差错的链路

  • 为网络层提供服务
    计算机网络 - 数据链路层_第1张图片
  • 链路管理(连接的建立、维持、释放)
  • 帧定界、帧同步、透明传输 (组帧)
  • 流量控制(限制发送方)
  • 差错控制(帧错 、位错的处理)

二:组帧

2.1 封装成帧

在一段数据的前后部分添加首部和尾部,这样就构成一个帧,接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束
计算机网络 - 数据链路层_第2张图片
作用:

  • 帧定界
  • 帧同步
  • 透明传输:不管所传数据是什么样的比特组合,都应当能够在链路上传送
    当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当措施,使接收方不会将这样的数据误认为是某种控制信息,这样才能保证数据链路层的传输是透明的

2.2 组帧的四种方法

  • 字符计数法
    帧的头部使用一个计数字段(第一个字节,八位)来标明帧内字符数
    计算机网络 - 数据链路层_第3张图片
    问题:如果计数字段出错,即失去了帧边界划分的依据,接收方就无法判断传输帧的结束位和下一帧的开始位,收发双方将失去同步
  • 字符填充的首尾定界符法
    使用一些特定的字符来定界一帧的开始(DLE STX)与结束(DLE ETX),
    在特殊字符前面加一个转义字符(DLE)来避免特殊字符不被误判为帧的首尾定界符,以实现数据的透明传输
    计算机网络 - 数据链路层_第4张图片
  • 比特填充的首尾标志法(常用)
    发送端:扫描整个信息字段,只要连续5个1,就立即填入1个0
    接受端:收到一个帧时,先找到标志字段确定边界,再用硬件对比特流进行扫描,发现连续5个1时,就把后面的0删除
    保证了透明传输,在传送的比特流中可以传送任意比特组合,而不会引起对帧边界的判断错误
  • 违规编码法(常用)
    计算机网络 - 数据链路层_第5张图片
    可以用 高-高 低-低 来定界帧的起始和终止
    只适用于采用冗余编码的特殊编码环境

三:差错控制

差错是由噪声引起的

3.1 噪声的分类

  • 信道所固有的、持续存在的随机热噪声(全局性)
    解决办法:提高信噪比来减少或避免干扰
  • 外界特定的短暂原因所造成的冲击噪声
    解决办法:编码技术

3.2 差错

计算机网络 - 数据链路层_第6张图片

3.3 差错控制

计算机网络 - 数据链路层_第7张图片
数据链路层编码:针对的是一组比特,通过冗余码的技术实现一组 二进制比特串在传输过程中是否出现了差错
物理层编码:针对的单个比特,解决传输过程中的比特的同步等问题,如曼彻斯特编码

  • 检错编码都采用冗余编码技术,在有效数据被发送前,先按照某种关系附加一定非冗余位,构成一个符合某一规则的码字后再发送, 接收端根据收到的码字是否任符合原规则来判断是否出错

3.3.1 奇偶校验码

n-1 位信息元和1位校验元组成
若是奇校验码:在附加一个校验元后,码长尾n的码字中1 的个数为奇数
若是偶校验码:在附加一个校验元后,码长为n的码字中1的个数为偶数

特点:只能检查出奇数个比特错误,检错能力为 50%

3.3.2 循环冗余码(CRC)

最终要发送的数据 = 要发送的数据 + 帧检验序列FCS(冗余码)
发送方 和 接收方事先商定一个多项式G(x),
步骤:

  1. 加0 ,假设G(x)的阶为r,在帧的低位端加上r个0 (多项式为n位,则阶为 n-1 位)
  2. 模 2 除: 异或操作:相同为0 不同为1, 数据加0后除以多项式,余数为冗余码/FCS
    例:
    在这里插入图片描述
    加 4个 0
    模2除法:
    计算机网络 - 数据链路层_第8张图片
    则最终发送的数据为 1101011011+1110
    接收端的检错过程:
    把收到的每一个帧都除以同样的除数,然后检查得到余数R
    若余数为0,则无差错 接受
    若余数不为0,有差错 丢弃
    FCS的生成以及接收端CRC的检验都是由硬件实现,处理迅速,不会延误数据的传输
    链路层使用CRC检验,能够实现无比特差错的传输,但不是可靠传输

3.3.3 海明码 (纠错编码)

发现双比特错,纠正单比特错
在这里插入图片描述

  1. 确定校验码位数 r
    m个信息位插入r个校验位组成m+r位码字 : 海明不等式: 2^r >= m + r + 1
    例如: 要发送的数据 :D = 101101
    数据的位数 m = 6
    满足不等式 2^r >= m + r + 1 的最小r为4,则海明码应该有 6 + 4 = 10 位,原数据6位,校验码 4位

  2. 确定校验码和数据的位置
    计算机网络 - 数据链路层_第9张图片
    令所有校验的位异或 = 0
    例如:求 P1: 找D1~D6第一位是1的,有D1 、D2、D4、D5
    则 令 P1⊕D1⊕D2⊕D4⊕D5 = 0 异或操作:相同为0 不同为1
    计算得 P1 = 0 同理求P2 P3 P4
    计算机网络 - 数据链路层_第10张图片

  3. 检错纠错
    令所有校验位异或运算 ,假设第五位出错 ,因此接受到数据为 0010111101
    例如 P1⊕D1⊕D2⊕D4⊕D5 算出结果为1
    同理算 P2⊕D1⊕D3⊕D4⊕D6 = 0
    P3⊕D2⊕D3⊕D4 = 1
    P4⊕D5⊕D6 = 0
    从高到底排列(P4到P1):0101 结果为 5 则第五位出错

四:流量控制与可靠传输机制

4.1 流量控制

由接收方控制发送方发送数据的速率
计算机网络 - 数据链路层_第11张图片

4.1.1 停止 - 等待 协议

每发送完一个帧就停止发送,等待对方的确认,在收到确认后再发送下一个帧

4.1.1.1- 停止 - 等待 协议 无差错情况
计算机网络 - 数据链路层_第12张图片
4.1.1.2 停止 - 等待 协议 有差错情况

  1. 数据帧丢失或者检测到帧出错
    超时重传,自动重传
    计算机网络 - 数据链路层_第13张图片
  2. ACK丢失(确认帧丢失)
    发送方重传已被接收的数据帧,接收方收到同样的数据帧时会丢弃该帧,重传一个该帧对应的确认帧
    计算机网络 - 数据链路层_第14张图片
  3. ACK 迟到
    计算机网络 - 数据链路层_第15张图片
    传输效率低 信道利用率太低
    发送 窗口大小 = 1 接收窗口大小 = 1
    计算机网络 - 数据链路层_第16张图片
    在这里插入图片描述

4.1.1.2 信道利用率:
发送方在一个发送周期内,有效地发送数据所需要的时间占整个发送周期的比率
计算机网络 - 数据链路层_第17张图片
在这里插入图片描述

4.1.2 滑动窗口协议
4.1.2-1 后退N帧协议 GBN

发送方无须再收到上一个帧的ACK后才能开始发送下一帧,而是可以连续发送帧
当接收方检测出失序的信息帧后,要求发送方重发最后一个正确接收的信息帧之后的所有未被确认的帧;
或当发送方发送了N个帧后,若发现该N个帧的前一个帧在计时器超时后任未返回其确认信息,则该帧被判为出错或丢失,此时发送方就不得不重传该出错帧及随后的N个帧 即 接收方只允许按顺序接收帧
GBN发送方必须响应的三件事:
计算机网络 - 数据链路层_第18张图片
GBN接收方必须做的三件事:
计算机网络 - 数据链路层_第19张图片
计算机网络 - 数据链路层_第20张图片
若采用n比特对帧编号,则发送窗口的尺寸Wt应该满足:1 <= Wt <=2^n - 1
性能:提高了信道利用率 使传送效率降低
GBN协议重点:
计算机网络 - 数据链路层_第21张图片

4.1.2-2 选择重传协议 SR

只重传出现差错的数据帧或计时器超时的数据帧
必须加大接收窗口,以便收下发送序号不连续但仍处在接收窗口中的那些数据帧,等到所缺序号的数据帧收到后再一并发送主机
SR发送方必须响应的三件事:
计算机网络 - 数据链路层_第22张图片
SR接收方必须响应的三件事:
计算机网络 - 数据链路层_第23张图片
计算机网络 - 数据链路层_第24张图片
发送窗口等于接收窗口

Wtmax  =   Wrmax  =  2^(n-1)

SR协议重点总结:
计算机网络 - 数据链路层_第25张图片

4.1.3 可靠传输、滑动窗口、流量控制

计算机网络 - 数据链路层_第26张图片

五:介质访问控制

计算机网络 - 数据链路层_第27张图片
介质访问控制:采取一定措施,使得两队节点之间的通信不会发生互相干扰的情况
计算机网络 - 数据链路层_第28张图片

5.1 信道划分介质访问控制

不发生冲突
信道划分介质访问控制:将使用介质的每个设备与来自同一信道上的其他设备的通信隔开,把 时域 和 频域资源合理地分配给网络上的设备
多路复用技术:把多个信号组合在一条物理信道上进行传输,使得多个计算机或终端设备共享信道资源,提高信道利用率
计算机网络 - 数据链路层_第29张图片
网络负载重:共享信道效率高 且公平
网络负载轻:共享信道效率低

5.1.1 频分多路复用 FDM

用户在分配到一定的频带后,在通信过程中自始置终都占用这个频带,频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源
计算机网络 - 数据链路层_第30张图片

5.1.2 时分多路复用 TDM

将时间划分为一段段登长的时分复用帧(TDM帧),每个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道
频分复用 ----并行
时分复用 ----并发
计算机网络 - 数据链路层_第31张图片

5.1.3 改进的时分复用 --统计时分复用 STDM

计算机网络 - 数据链路层_第32张图片

5.1.4 波分多路复用 WDM

就是光的频分多路复用
计算机网络 - 数据链路层_第33张图片

5.1.5 码分多路复用 CDM

码分多址 CDMA 是码分复用的一种方式
1个比特分为多个码片/芯片(chip),每一个站点被指定一个唯一的m位芯片序列
发送1时站点发送芯片序列,发送0时发送芯片序列反码(通常把0写成-1)
在这里插入图片描述

5.2 随机访问介质访问控制

所有用户可随机发送信息,发送信息时占全部带宽
网络负载重:产生冲突开销
网络负载轻:共享信道效率高,单个节点可利用信道全部带宽
发生冲突

5.2.1 ALOHA 协议 (不听就说)
5.2.1.1 纯ALOHA协议

不监听信道,不按时间槽发送,随机重发,想发就发
计算机网络 - 数据链路层_第34张图片

5.2.1.2 时隙ALOHA协议

把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等待下一个时间片开始时刻再发送

控制想发就发的随意性
计算机网络 - 数据链路层_第35张图片

纯ALOHA协议 比 时隙ALOHA协议吞吐量更低 效率更低
纯ALOHA协议想发就发,时隙ALOHA只有在时间片段开始时才能发

5.2.2 CSMA协议 (先听再说)

先听再说
CS:载波监听/监听 每个站在发送数据之前检测一下总线上是否有其他计算机在发送数据
MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上
发送 帧之前, 监听信道
计算机网络 - 数据链路层_第36张图片
计算机网络 - 数据链路层_第37张图片
计算机网络 - 数据链路层_第38张图片

5.2.3 CSMA/CD协议 (先听再说,边听边说)(重点)

应用于总线式以太网
载波监听多点接入/ 碰撞检测
MA:多点接入 总线型网络
.CD:碰撞检测(冲突检测) 边发送 边监听 半双工网络
最迟经过 两倍的总线端到端的传播时延(2τ) 才能知道自己发送的数据有没有和别人碰撞
2τ : 总线的端到端往返传播时延 /争用期 / 冲突窗口 / 碰撞窗口
只要经过2τ 的时间还没检测出碰撞,那么这次发送不会发生碰撞
计算机网络 - 数据链路层_第39张图片
确定碰撞后的重传时机: --截断二进制指数规避算法

  1. 确定基本规避(推迟)时间为争用期 2τ
  2. 定义参数k,等于重传次数 ,但k不超过10,即 k = min{重传次数,10}
  3. 从离散的整数集合[0,1,…,2^k-1] 随机取一个数r,重传所需要规避的时间就是 r倍的基本退避时间,即 2τr
  4. 当重传次数到达16次任不能成功,说明网络太拥挤,抛弃此帧并报告出错
    计算机网络 - 数据链路层_第40张图片
    使用此算法可以使重传需要推迟的平均时间随重传次数的增大而增大,因而减小发生碰撞的概率,有利于整个系统的稳定

最短帧长: = 总线传播时延 * 数据传输速率 * 2 = 2τ * 数据传输速率

5.2.4 CSMA/CA协议

应用于无线局域网
载波监听多点接入 / 碰撞避免
原理:

  1. 发送数据前,先检测信道是否空闲
  2. 空闲则发出RTS,RTS包括:发射端的地址、接收端的地址、下一份数据将持续发送的时间等信息,信道忙则等待
  3. 接收端收到RTS后,将响应CTS
  4. 发送端收到CTS后,开始发送数据帧(同时预约信道:发送发告知其他站点自己要传多久数据)
  5. 接收端收到数据帧后,将用CRC检验数据是否正确,正确则响应ACK帧
  6. 发送方收到ACK帧就可以进行下一个数据帧的发送,若没有则一直重传至规定次数为止(二进制退避算法来确定随机的推迟时间)

预约信道 ACK帧 RTS / CTS (可选)
CSMA/CD CSMA/CA异同点:
计算机网络 - 数据链路层_第41张图片

5.3 轮询介质访问控制

不发生冲突
既不产生冲突,又发送时占全部带宽

5.3.1 轮询协议

主节点轮流邀请从属节点发送数据
问题:轮询开销 等待延迟 单点故障

5.3.2 令牌传递协议

计算机网络 - 数据链路层_第42张图片
令牌:一个特殊格式的MAC控制帧,不含任何信息 控制信道的使用,保证同一时刻只有一个结点独占信道

令牌环网无碰撞

每个节点都可以在一定的额时间内获得发送数据的权利,并不是无限制持有令牌

问题:令牌开销 等待烟花i 单点故障

应用于令牌环网(物理星型拓扑、逻辑环形拓扑)
采用令牌传递方式的网络常用于负载较重、通信量较大的网络中

六:局域网

某一区域内由多台计算机互联成的计算机组 使用广播信道
特点:

  1. 覆盖范围小
  2. 使用专门铺设的传输介质(双绞线、同轴电缆)进行联网,数据传输率高
  3. 通信延迟时间短,误码率低 可靠性高
  4. 各站平等关系,共享传输信道
  5. 采用分布式控制 和 广播式信道,能进行广播 和 组播

决定局域网的主要要素: 网络拓扑 传输介质 介质访问控制方法

6.1局域网拓扑结构:

计算机网络 - 数据链路层_第43张图片

6.2局域网传输介质:

计算机网络 - 数据链路层_第44张图片

6.3局域网介质访问控制方法:

计算机网络 - 数据链路层_第45张图片

6.4 局域网分类:

计算机网络 - 数据链路层_第46张图片

  1. IEEE 802标准:

广泛使用的有 以太网、令牌环、无线局域网等
IEEE 802.3 : 以太网
IEEE 802.5 : 令牌环网
IEEE 802.8 : FDDI 光纤
IEEE 802.11 : 无线局域网

IEEE 802 标准所描述的局域网参考模型只对应于OSI参考模型的数据链路层、物理层
它将数据链路层划分为逻辑链路层LLC子层介质访问控制MAC子层
计算机网络 - 数据链路层_第47张图片

6.5 以太网:

基带总线局域网规范
是局域网采用的最通用的通信协议标准
使用CSMA/CD 技术

  • 造价低廉
  • 应用最广泛的局域网技术
  • 比令牌环网、ATM网便宜、简单
  • 满足网络速率要求:100Mb/s ~ 10Gb/s

以太网两个标准:

  • DIX Ethernet V2: 第一个局域网产品(以太网)规约
  • IEEE 802.3 : IEEE 802委员会802.3工作组制定的第一个IEEE的以太网标准(帧格式有一点改动)

以太网提供无连接、不可靠的服务:

  • 无连接: 发送方 和接收方之间无握手过程
  • 不可靠:不对发送方数据帧编号、接收方不向发送方进行确认,差错帧直接丢弃,差错纠正由高层负责
    以太网只实现无差错接收,不实现可靠传输

以太网传输介质与拓扑结构的发展:
计算机网络 - 数据链路层_第48张图片
10BASE - T 以太网:
10BASE - T是传送基带信号的双绞线以太网,T表示采用双绞线, 无屏蔽双绞线,传输速率10Mb/s
物理上采用星型拓扑、逻辑上总线型 每段双绞线最长为100m
采用曼彻斯特编码
采用CSMA / CD 介质访问口控制
计算机网络 - 数据链路层_第49张图片
适配器:
计算机与外界有局域网的连接时通过通信适配器的
计算机网络 - 数据链路层_第50张图片
以太网MAC帧:
最常用的MAC帧是以太网V2的格式
计算机网络 - 数据链路层_第51张图片
高速以太网:
速率 >= 100Mb/s 的以太网
计算机网络 - 数据链路层_第52张图片
IEEE 802.11 标准:
是无线局域网的标准, 由 IEEE所定义的无线网络通信的标准
802.11 MAC帧头格式:
计算机网络 - 数据链路层_第53张图片
无线局域网分类:

  1. 有固定基础设施的无线局域网
  2. 无固定基础设施的无线局域网的自组织网络

七:广域网

广域网的通信子网主要使用 分组交换 技术
计算机网络 - 数据链路层_第54张图片

7.1 PPP协议 :

面向字节
点对点协议:最广泛使用的数据链路层协议
只支持全双工链路
满足的要求:
计算机网络 - 数据链路层_第55张图片
无需满足的要求:
计算机网络 - 数据链路层_第56张图片
三个组成部分:
计算机网络 - 数据链路层_第57张图片
帧格式:
计算机网络 - 数据链路层_第58张图片

7.2 HDLC协议 :

面向比特
数据报文可透明传输,用于实现透明传输的0比特传输法易于硬件实现
采用全双工通信
所有帧采用CRC检验,对信息帧进行顺序编号,防止漏收、重份,传输可靠性高
HDLC的站:
计算机网络 - 数据链路层_第59张图片
HDLC的帧格式:
计算机网络 - 数据链路层_第60张图片
帧的类型: 信息帧 、 监督帧 、 无编号帧
在这里插入图片描述

7.3 PPP 协议 && HDLC协议 异同点:

计算机网络 - 数据链路层_第61张图片

八:链路层设备

物理层扩展以太网: 集线器
计算机网络 - 数据链路层_第62张图片
链路层扩展以太网: 网桥 && 交换机
网桥根据MAC帧的目的地址对帧进行转发 和 过滤 ,当网桥收到一个帧时,并不向所有接口转发此帧,而是先检查此帧的目的MAC地址,然后再确定将该帧转发到哪一个接口或者把它丢弃( 即过滤 )

计算机网络 - 数据链路层_第63张图片
网桥分类:

  • 透明网桥: “透明”指以太网上的站点并不知道所发送的帧将经过哪几个网桥,是一种即插即用设备 --自学习
  • 源路由网桥:在发送帧时,把详细的最佳路由信息(路由最少/ 时间最短) 放在帧的首部中
    方法:源站以广播方式向欲通信的目的站发送一个发现帧

交换机:
计算机网络 - 数据链路层_第64张图片

  • 直通式交换机:查完目的地址(6B) 就立刻转发 延迟小 可靠性低 无法支持具有不同速率的端口的交换
  • 将帧放入高速缓存,并检查是否正确,正确则转发,错误丢弃 延迟大,可靠性高,可以支持具有不同速率的端口的交换

冲突域 && 广播域:
计算机网络 - 数据链路层_第65张图片

你可能感兴趣的:(笔记,局域网,以太网,交换机,网络)