数据链路层
一、数据链路层的背景
知识背景梳理:
网络中的主机、路由器、交换机都必须实现数据链路层;
数据链路层使用的信道:
- 点对点信道:这种信道使用一对一的点对点通信方式。
- 广播信道:使用一对多的广播通信方式, 因此必须使用专用的共享信道协议来协调这些主机的数据发送。(带来的问题:若多个设备在共享的广播信道上同时发送数据,则会造成彼此干扰,导致发送失败。)
链路划分:
- 物理链路:点到点的物理线路段,中间无其他交换节点;
- 逻辑链路:即数据链路,是物理链路加上必要的通信协议;
数字链路层传输的数据单位:帧
误码率:在一段时间内,传输错误的比特占所传输比特总数的比率
不同的数据链路层有不同的帧的格式;
数据链路层协议有多种,但有三个基本问题是共同的:
-
封装成帧:在一段数据的前后添加首部和尾部
- 首部和尾部的作用:进行帧定界;
- 当数据是用ASCII码组成的文本文件,则其帧定界可以用一些特定的符号表示;
- 控制字符SOH(StartOfHeader)放在一帧的最前面,表示帧的首部开始。
- 另一个控制字符EOT(EndOfTransmission)表示帧的结束。
- 首部和尾部的作用:进行帧定界;
-
透明传输:表示无论发送什么样的比特组合,其接收端都原封不动的通过。
- 透明传输问题:某字节二级制代码与SOH或者EOT一样,造成帧边界判断干扰。
- 解决方法:字节填充 or 字符填充(即在发送端的数据链路层在数据中出现控制字符“SOH”或“EOT"的前面插入一个转义字符"ESC""(其十六进制编码是1B)。在接收端那里删掉转义字符)
-
差错控制:
- 背景:当在一段时间内,数据传输由于信噪的影响,出现了误码的情况,由此,产生了差错检测的措施。
- 传输差错类型:
- 出现在数据链路层及其上层
- 分组丢失
- 分组失序
- 分组重复
- 出现在数据链路层及其下层
- 误码
- 方法:
- 奇偶校验: 在每个数据块中增加一个奇偶位,使得数据块中1的数量为奇数或偶数
- 循环冗余检验(CRC)
二、点对点协议PPP((Point-to-Point Protocol)
作为目前最广泛的数据链路层协议,满足特点如下:
- 封装成帧——必须规定特殊的字符作为帧定界符;
- 透明性——必须保证数据传输的透明性;
- 多种网络层协议——能够在同一条物理链路上同时支持多种网络层协议;
- 多种类型链路——能够在多种类型的链路上运行;
- 差错检测——能够对接收端收到的帧进行检测,并立即丢弃有差错的帧。
- 检测连接状态——能够及时自动检测出链路是否处于正常工作状态。
- 最大传送单元——必须对每一种类型的点对点链路设置最大传送单元MTU的标准默认值,促进各种实现之间的互操作性。
- 网络层地址协商——必须提供一种机制使通信的两个网络层实体能够通过协商知道或能够配置彼此的网络层地址。
- 数据压缩协商——必须提供一种方法来协商使用数据压缩算法
ppp协议的组成:
- 一个将IP数据报封装到串行链路的方法
- 链路控制协议LCP(LinkControlProtocol)
- 网络控制协议NCP(NetworkControlProtocol)。
.不同的协议下,对应数据有不同的帧,PPP的帧的结构如下:
.
PPP遇见透明传输问题:
- 当PPP用在异步传输时,就使用一种特殊的字符填充法
- 当PPP用在同步传输链路时,协议规定采用硬件来完成比特填充 (和HDLC的做法一样,HDLC(High-Level Data Link Control)是一种数据链路层协议,用于在点对点或多点网络中提供可靠的数据传输)
PPP协议的工作状态:
三、广播通信
定义:广播信道是一种通信方式,允许发送方将信息发送到网络中的所有设备。(广泛应用在局域网LAN,特别是以太网)
知识背景梳理:
- 局域网的优点:
- 媒体共享技术:
- 以太网背景(仅了解)
以太网是一种局域网技术,使用广播信道进行数据传输。它定义了在局域网内设备如何相互通信的标准
- 支持广播通信:以太网允许数据包通过广播发送到所有连接的设备。
- 使用物理地址(MAC 地址)来标识网络中的设备。
- 网络适配器:
以太网通信的重要特性:
- 采用较为灵活的无连接工作方式;(不必先建立连接,直接发送数据,这样局域网信道的干扰误差减少)
- 以太网发送的数据都使用曼彻斯特编码;(可以提取时钟频率,自同步)
因为以太网是一套运行在局域网上的协议,对于使用总线的局域网,可能会出现两个站同时发送消息导致产生冲突(碰撞)的情况。故此产生了CSMA/CD机制
-
概念:
-
为什么要进行碰撞检测?
-
相关概念:
在碰撞后双方如果又同时发送数据,又产生碰撞?可以用什么策略解决?
CSMA/CD协议运行的流程:
局限性:
四、集线器
集线器是一种网络设备,用于连接多个网络设备,使它们能够在同一网络中进行通信。集线器通常工作在OSI模型的物理层(Layer 1),负责接收、放大和转发信号
集线器的工作原理相对简单:
- 信号接收:当一个网络设备(如计算机)向集线器发送数据时,集线器接收到这一信号。
- 信号转发:集线器将接收到的信号广播到所有连接的端口。这意味着所有连接到集线器的设备都能接收到该信号。
- 无智能转发:集线器不具备过滤或智能转发的能力,它只是简单地将信号转发到所有设备。
五、以太网信道利用率
定义:
信道占用情况:
相关公式:
六、数据链路层的MAC层
七、以太网交换机