数据链路层的功能

数据链路层在物理层提供服务的基础上向网络层提供服务,其最基本的服务是将源自网络层来的数据可靠地传输到相邻节点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造成为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。

功能一:为网络层服务

  1. 无确认无连接服务
  2. 有确认无连接服务
  3. 有确认面向连接服务

注意⚠️:有连接就一定有确认

功能二:链路管理

即连接的建立、维持、释放

功能三:组帧

功能四:流量控制

功能五:差错控制(帧错/位错)

组帧

image.png
image.png

透明传输

透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就 “看不见”有什么妨
碍数据传输的东西。
当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。

字符计数法

帧首部适用一个计数字段(第一个字节,八位)来标明帧内字符数。
image.png

字符填充法

image.png
image.png

零比特填充的首尾标志法

image.png
它使用一个特定的比特模式,即 01111110 来标志一帧的开始和结束。为了不使信息位中出现的比特流 01111110 被误判为帧的首尾标志,发送方的数据链路层在信息位中遇到 5个连续的“1”时,将自动在其后插入一个“0”而接收方做该过程的反操作,即每收到 5个连续的 “1”时,自动删除后面紧跟的“0”,以恢复原信息。

违规编码法

image.png

差错控制

检错编码

1.奇偶校验法

image.png

2.CRC循环冗余法

image.png
image.png
image.png

纠错编码

海明码

image.png
image.png

流量控制与可靠传输机制

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

流量控制涉及对链路上的帧的发送速率的控制,以使接收方有足够的缓冲空间来接收每个
帧。例如,在面向帧的自动重传请求系统中,当待确认帧的数量增加时,有可能超出缓冲存储空
间而造成过载。流量控制的基本方法是由接收方控制发送方发送数据的速率,常见的方式有两种:
停止-等待协议和滑动窗口协议。

停止-等待流量控制基本原理

没发送完一个帧就停止发送,等待对方的确认,在收到确认后再发送下一个帧。
image.png

滑动窗口流量控制基本原理

在任意时刻,发送方都维持一组连续的允许发送的帧的序号,称为发送窗口;同时接收方也
维持一组连续的允许接收帧的序号,称为接收窗口。发送窗口用来对发送方进行流量控制,而发
送窗口的大小 可-代表在还未收到对方确认信息的情况下发送方最多还可以发送多少个数据帧。
同理,在接收端设置接收窗口是为了控制可以接收哪些数据帧和不可以接收哪些帧。在接收方,
只有收到的数据帧的序号落入接收窗口内时,才允许将该数据帧收下。若接收到的数据帧落在接
收窗口之外,则一律将其丢弃。
image.png
image.png
image.png

停止-等待协议

无差错情况

image.png

有差错情况

1.数据帧丢失或校验到帧出错

image.png

2.ACK丢失

image.png

3.ACK迟到

image.png
image.png
image.png

后退N帧协议(GBN)

image.png

GBN发送方必须响应的三件事

1.上层的调用

上层要发送数据时,发送方先检查发送窗口是否己满,如果未满,则产生一个帧并将其发送;如果窗口己满,
发送方只需将数据返回给上层,暗示上层窗口己满。上层等一会再发送。(实际实现中,发送方可以缓存这
些数据,窗口不满时再茇送帧)

2.收到一个ACK

GBN协议中,对n号帧的确认采用累积确认的方式,标明接收方己经收到n号帧和它之前的全部帧。

3.超时事件

协议的名字为后退N帧/回退N帧,来源于出现丢失和时延过长帧时发送方的行为。就像在停等协议中-
定时器将再次用于恢复数据帧或确认帧的丟失。如果出现超时,发送方重传所有己发送但未被确认的帧。

GBN接收方要做的事

1.如果正确收到n号帧,并且按序,那么接收方为n帧发送一个ACK,并将该帧中的数据部分交付给上层。

2.其余情况都丢弃帧,并为最近按序接收的帧重新发送ACK。接收方无需缓存任何失序帧,只需要维护一个信 息:expectedseqnum<下一个按序接收的帧序号)

运行中的GBN

image.png

滑动窗口的长度

1<=WT<=2n-1

GBN协议重点

  1. 累计确认(偶尔捎带确认)
  2. 接收方只按顺序接受帧,不按需无情抛弃
  3. 确认序号列好最大的、按需到大的帧
  4. 发送窗口最大为2n-1,接受窗口大小为1

    GBN协议性能分析

  • 因连续发送数据帧而提高了吞吐率
  • 在重传时必须把原来已经正确传送的数据帧崇川,是传送效率较低

    选择重传协议(Selective Repeat)

    GBN协议的弊端

    image.png
    解决办法:设置耽搁确认,同时加大接收窗口,设置接收缓存,缓存乱序到达的帧。

    选择重传协议中的滑动窗口

    image.png

    SR发送方必须响应的三件事

    1.上层的调用

    从上层收到数据后,SR发送方检查下一个可用于该帧的序号,如果序号位于发送窗口内,则发送数据帧;否则就像GBN一样,要么将数据缓存,要么返回给上层之后再传输。

    2.收到一个ACK

    如果收到ACK,加入该帧序号在窗口内,则SR发送方将那个被确认的帧标记为己接收。如果该帧序号是窗口的下界(最左边第-个窗口对应的序号)则窗口向前移动到具有最小序号的未确认帧处。如果窗口移动了并且有序号在窗口内的未发送帧,则发送这些帧。
    image.png

    3.超时事件

    每个帧都有自己的定时器,一个超时事件发生后只重传一个帧。

    SR接收方要做的事

    image.png
    image.png

    滑动窗口的长度

    image.png

    SR协议重点总结

    image.png

    介质访问控制

    点对点链路

    两个相邻结点通过一个链路相连,没有第三者。
    应用:PPP协议,广域网

    广播式链路

    所有主机共享通信介质。
    应用:早期的总线以太网、无线局域网,常用于局域网。
    典型拓扑结构:总线型、星型(逻辑总线型)

介质访问控制所要完成的主要任务是,为使用介质的每个结点隔离来自同一信道上其他结点所传送的信号,以协调活动结点的传输。用来决定广播信道中信道分配的协议属于数据链路层的一个子层,称为介质访问控制(Medium Access Control, MAC)子层。
image.png

信道划分介质访问控制

image.png

1.频分多路复用(FDM)

用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。频分复用的所有用户在同样的时间占用不同的带宽(频率带宽)资源。
充分利用传输介质带宽,系统效率较高;由于技术比较成熟,实现也比较容易。
image.png

2.时分多路复用(TDM)

海时间划分为一段段等长的时分复用帧 (TDM帧,。每一个时分复用的用户在每一个TDM帧中占用固定序号的时隙,所有用户轮流占用信道。
image.png
image.png

改进的时分复用—统计的时分复用(STDM)

image.png

波分多路复用(WDM)

波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长(频率)的光信号,由于波长
不同,所以各路光信号互不千扰,最后再用波长分解复用器将各路波长分解出来。
image.png

码分多路复用(CDM)

码分多路复用是采用不同的编码来区分各路原始信号的一种复用方式。与 FDM 和TDM 不同,它既共享信道的频率,又共享时问。
码分多址 (Code Division Multiple Access, CDMA)是码分复用的一种方式,特时问被分成m个更短的时问槽,称为码片(Chip),通常情况下每比特有64或个站点被指定一个唯一的™ 位代码或码片序列。发送1时,站点发送码片序列;么发送码片序列的反码。当两个或多个站点同时发选时,各路数据在信道中线性相力分离出各路信号,要求各个站点的码片序列相互正交。
image.png

随机介质访问控制

Aloha协议

1.纯Aloha协议

思想:不监听信道,不按时间槽发送,随机发送。想发就发
image.png

2.时隙Aloha协议

思想:把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,若发生冲突,则必须等待下一个时间片开始时刻发送。控制想法就发的随意性。
image.png

关于Aloha要知道的事

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

CSMA协议

载波监听多路访问协议CSMA (carrier sense multiple access)
image.png

1.1-坚持CSMA

image.png

2.非坚持CSMA

image.png

3.P-坚持CSMA

image.png

三种CSMA协议对比

image.png

CSMA/CD协议

载波侦听多路访问/碰撞检测 ( Carrier Sense Multiple Access with Collision Detection, CSMA/CD)协议是 CSMA 协议的改进方案,适用于总线形网络或半双工网络环境。“载波帧听”就是发送前先侦听,即每个站在发送数据之前先要检测一下总线上是否有其他站点正在发送数据,若有则暂时不发送数据,等待信道变为空闲时再发送。“碰撞检测”就是边发送边侦听,即适配器边发送数据边检测信道上信号电压的变化情况,以便判5自己在发送数据时其他站点是否也在发送数据。
CSMA/CD 的工作流程可简单概括为“先听后发,边听边发(区别手 CSMA 协议),冲突停
发,随机重发”。
Screen Shot 2022-04-14 at 6.31.03 PM.png
image.png
image.png
image.png

CSMA/CA协议

image.png

原理

image.png
image.png

轮询访问戒指控制

image.png
image.png

局域网

image.png

拓扑结构

image.png

传输介质

image.png

访问介质控制方法

image.png

局域网的分类

image.png
image.png

MAC子层和LLC子层

image.png

以太网

以太网(Ethernet)指的是由Xerox公司创建并由xerox、Intel和DEC公司联合开发的基带总线局域网规范,是当今现有局域网采用的最通用的通信协议标准。以太网络使用CSMA/CD(载波监听多路访问及冲突检测)技术以太网在局域网各种技术中占统治性地位:
1.造价低廉(以太网网卡不到100块);
2.是应用最广泛的局域网技术;
3.比令牌环网, ATM网便宜,简单;
4.满足网络速率要求:10Mb/s~10Gb/s.
image.png
image.png
image.png

适配器与MAC地址

image.png
image.png

以太网MAC帧

image.png

高速以太网

image.png

无线局域网

EEE 802.11是无线局域网通用的标准,它是由IEEE所定义的无线网络通信的标准。
image.png
image.png

有固定基础设施无线局域网

image.png

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

image.png

广域网

广域网 (WAN, Wide Area Network),通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。广域网的通信子网主要使用分组交换技术。广域网的通信子网可以利用公用分组交换网、 卫星通信网和无线分组交换网:
它将分布在不同地区的局域网或计算机系统互连起来,达到资源共享的目的。如因特网 CInternet)
是世界范围内最大的广域网。

PPP协议的特点

点对点协议PPP (Point-to-Point Protocol))是目前使用最广泛的数据链路层协议,用户使用拨号电话接入因网
时一一般都使用PPP协议。
只支持全双工链路

应满足的要求

image.png

无法满足的需求

  1. 纠错
  2. 流量控制
  3. 序号
  4. 不支持多点线路

    PPP协议的三个组成部分

    image.png

    状态图

    image.png

    PPP协议的帧格式

    image.png

    HDLC协议

    高级数据链路控制 (High-Level Data Link Control或简称HDLC),是一个在同步网上传输数据、面向比特的数据链路层协议,它是由国际标准化组织(ISO)根据1IBM公司的SDLC(SynchronousData Link Control)协议扩展开发而成的。
    数据报文可透明传输,用于实现透明传输的 “0比特插入法”易于硬件实现
    采用全双工通信
    所有帧采用CRC检验,对信息帧进行顺序编号,可防止漏收或重份,传输可靠性高。
    image.png

    HDLC的帧格式

    image.png
    image.png

    链路层设备

    image.png

    网桥

    透明网桥

    透明网桥:“透明”指以太网上的站点并不知道所发送的帧将经过哪几个网桥,是一种即插即用设备一自学习设备。
    image.png

    源路由网桥

    在帧发送时,把最详细的最佳路由信息(路由最少/时间最短)放在帧的首部中。
    方法:源站向目的站发送一个发现帧。
    image.png

    以太网交换机

    image.png

    两种交换方式

    image.png

    冲突域和广播域

    一块网卡发送信息时,只要有可能和另一块网卡冲突,那么这些可能冲突的网卡就构成冲突域。一块网卡发出一个广播时,能收到这个广播的所有网卡的集合称为一个广播域。一般来说,一个网段就是一个冲突域,一个局域网就是一个广播域。
    image.png

    重点总结

    image.png