第 3 章 数据链路层--- 帧 本章介绍的数据链路层协议都不是可靠传输的协议
数据链路层的两个子层:
逻辑链路控制 LLC (Logical Link Control)子层;
媒体接入控制 MAC (Medium Access Control)子层。
1 .数据链路层使用的信道主要有以下两种类型:
点对点信道。这种信道使用一对一的点对点通信方式。
广播信道。这种信道使用一对多的广播通信方式,
- 三个基本问题是:封装成帧 透明传输 差错控制
- 链路 (link) 是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。
- 数据链路 (data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。
- 在互联网中网络层协议单元就是IP数据报(数据报,分组,包)
- 封装成帧 (framing) 就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。首部和尾部的一个重要作用就是进行帧定界。每一种 链路协议都规定了所能传送的帧的数据部分长度上限,最大传送单元MTU
-
解决透明传输问题
解决方法:字节填充 (byte stuffing) 或字符填充
发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC” (其十六进制编码是 1B)。接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。如果转义字符也出现在数据当中,那么应在转义字符前面插入一个转义字符 ESC。当接收端收到连续的两个转义字符时,就删除其中前面的一个。
8.差错检测
在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率 BER (Bit Error Rate)。
误码率与信噪比有很大的关系。
循环冗余检验 CRC 的检错技术。
在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。
现在 k = 6, M = 101001。设 n = 3, 除数 P = 1101,被除数是 101001000。
模 2 运算的结果是:商 Q = 110101,余数 R = 001。
把余数 R 作为冗余码添加在数据 M 的后面发送出去级、、101001001,共 (k + n) 位。 传输传输差错的分类:
比特差错:1变0,0变1
帧丢失:丢失某个帧
帧重复:某个帧收到多次
帧失序:后发送的帧反而先到达接收端
9.点对点PPP 协议有三个组成部分:
(1) 一个将 IP 数据报封装到串行链路的方法。
(2) 链路控制协议 LCP (Link Control Protocol)。
(3) 网络控制协议 NCP (Network Control Protocol)。
10.PPP 帧的首部和尾部分别为 4 个字段和 2 个字段,标志字段 F = 0x7E (符号“0x”表示后面的字符是用十六进制表示。十六进制的 7E 的二进制表示是 01111110),地址字段 A 只置为 0xFF。地址字段实际上并不起作用,控制字段 C 通常置为 0x03。
PPP 是面向字节的,所有的 PPP 帧的长度都是整数字节。
当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样)。
当 PPP 用在异步传输时,就使用一种特殊的字符填充法。
这时 PPP 协议采用零比特填充方法来实现透明传输。
在发送端,只要发现有 5 个连续 1,则立即填入一个 0。接收端对帧中的比特流进行扫描。每当发现 5 个连续1时,就把这 5 个连续 1 后的一个 0 删除
- 使用广播信道的数据链路层
局域网最主要的特点是:网络为一个单位所拥有;地理范围和站点数目均有限。
局域网的拓扑结构:总线网、环形网、星形网
IEEE 802 委员会就将局域网的数据链路层拆成两个子层:
逻辑链路控制 LLC (Logical Link Control)子层;
媒体接入控制 MAC (Medium Access Control)子层。
与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关。
网络接口板又称为通信适配器 (adapter) 或网络接口卡 NIC (Network Interface Card),或“网卡”。
- CSMA/CD 协议 含义:载波监听多点接入 / 碰撞检测
工作原理:先发先侦听,空闲即发送,边发边检测,冲突退避再发送
是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。边发送数据边检测信道上的信号电压大小。每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
多点接入:说明是总线型网络
- 使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)最先发送数据帧的站,在发送数据帧后至多经过时间 2t (两倍的端到端往返时延)
以太网的端到端往返时延 2t 称为争用期,或碰撞窗口。
为了通信的简便,以太网采取了两种重要的措施:
(1) 采用较为灵活的无连接的工作方式
2) 以太网发送的数据都使用曼彻斯特 (Manchester) 编码
14.10 Mbit/s 以太网取 51.2 ms 为争用期的长度。
对于 10 Mbit/s 以太网,在争用期内可发送 512 bit,即 64 字节。以太网在发送数据时,若前 64 字节没有发生冲突,则后续的数据就不会发生冲突。以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。
15. 使用无屏蔽双绞线,采用星形拓扑。
集线器特点:广播域冲突域
使用集线器的以太网在逻辑上仍是一个总线网,各工作站使用的还是 CSMA/CD 协议,并共享逻辑上的总线。 集线器很像一个多接口的转发器,工作在物理层:集线器采用了专门的芯片,进行自适应串音回波抵消,减少了近端串音
注意与交换机的区别:
交换机:数据链路层,
假设 t 是以太网单程端到端传播时延。则争用期长度为 2t,即端到端传播时延的两倍。检测到碰撞后不发送干扰信号。设帧长为 L (bit),数据发送速率为 C (bit/s),则帧的发送时间为 T0 = L/C (s)。
- 以太的网信道利用率
以太网信道的利用率:由于会发生碰撞,实际利用率达不到100%
成功发送一个帧占用信道的时间:T0+τ
参数a:
a=τ/T0 是单程端到端时延τ与帧的发送时间T0之比
a->0表示一发生碰撞就能立即检测出来并停止发送,而a越大,争用期占比越大,使信道利用率降低
因此a的值越小越好;当数据率一定时,以太网连线的长度受到限制,同时以太网的帧长不能太短
极限信道利用率Smax: Smax=T0/(T0+τ)=1/1+a
只有参数a远小于1才能得到尽可能高的极限信道利用率
17. 以太网的 MAC 层
硬件地址又称为物理地址,或 MAC 地址,IEEE 802 标准规定 MAC 地址字段可采用 6 字节 ( 48位) 或 2 字节 ( 16 位) 这两种中的一种。
向厂家分配地址字段 6 个字节中的前三个字节 (即高位 24 位),称为组织唯一标识符。
地址字段 6 个字节中的后三个字节 (即低位 24 位) 产品序号,称为扩展唯一标识符,
了解
- 在数据链路层扩展以太网
网桥工作在数据链路层。
以太网交换机的特点:接口有存储器;即,插即用设备;专用的交换结构芯片;交换机上的主机是全双工工作,不会产生冲突,交换机中存有地址表通过自学习算法建立,交换机上所有端口在同一个广播域上
以太网交换机实质上就是一个多接口的网桥,具有并行性。工作在全双工方式
帧转发方式:
直通:收到帧之后直接转发,不必事先把整个数据帧缓存,但也不对帧进行检验
存储转发:将所有帧都收到后进行检查,然后再发送
交换机的自学习功能:
地址表的形成:收到未知的地址后,存储源地址和接口的对应关系,向除来源端口的其它端口广播,目的地址不符则丢弃,否则接收并回复,收到回复后存储对应关系;地址表有有效时间,超过有效时间则失效
生成树协议STP:解决无限循环的问题
广播风暴
总线以太网使用CSMA/CD协议,以半双工方式
- 虚拟局域网
虚拟局域网(VLAN):是一些局域网网段构成的与物理位置无关的逻辑组
*VLAN标记:在MAC帧的源地址和类型间插入4字节的VLAN标记,交换机收到帧后只向所属VLAN转发,而不进行广播
最大帧长变为1522字节(1518+4)
IEEE802.1Q
补充:课后题
3.网络适配器的作用是什么?工作在哪一层?
解:适配器是用来实现数据链路层和物理层这两层的协议的硬件和软件;工作在数据链路层和物理层
4.数据链路层的三个基本问题为什么必须解决?
解:帧定界是分组交换的必然要求;透明传输避免消息符号与帧定界符混淆;差错检验防止差错的无效帧浪费后续路由上的传输和处理资源
19.以太网使用的CSMA/CD协议是以争用方式接入到共享信道。这与传统的时分复用TDM相比优缺点如何?
解:传统时分复用是静态时隙分配,均匀高负荷时信道利用率高,低负荷或负荷不均匀时资源浪费较大;CSMA/CD动态使用空闲资源,低负荷时信道利用率高,但控制复杂,高负荷时信道冲突大
20.假定1km长的CSMA/CD网络的数据率为1Gb/s。设信号在网络上的传播速率为200000km/s。求能够使用此协议的最短帧长。
解:对于1km长的电缆,单程传播时间为1/200000=5μs,来回传播时间即为10μs,所以最小帧的发射时间不能小于10μs,以1Gb/s速率工作,10μs能发送的比特数为10*10^-6*1*10^9=10000.因此,最短帧长是10000位