数据链路层使用的信道有两种类型:
(1)点对点信道
(2)广播信道
数据链路层所有的知识点都围绕着两种类型信道的使用方式展开
A、使用点对点信道的数据链路层
1、数据链路和链路的区别
链路是从一个结点到相邻结点的一段物理线路(有线或者无线),而中间没有任何其他的交换结点。
数据链路是链路加上必要的通信协议。
2、点对点信道的数据链路层的协议数据单元
帧(网络层协议数据单元:IP数据报)
3、点对点信道的数据链路层的三个问题
a、封装成帧
封装成帧就是在一段数据的前后分别添加首部和尾部,这样才能构成一个帧。而首部和尾部的一个重要作用就是进行帧定界(即确定帧的界限)。
帧开始符:SOH,十六进制编码01,二进制00000001
帧结束符:EOT,十六进制编码04,二进制00000100
如果接收端接收到的数据没有帧开始符和帧结束符,就会自动丢弃帧。
b、透明传输
如果在数据中也存在SOH或者EOT(比如数据二进制代码存在00000100),接收端就会提前结束接收,后面的有效数据全部被舍弃,怎样处理这种情况呢?
字节填充(字符填充):凡是在数据中出现SOH或者EOT,在其前面加上一个转义字符ESC,接收数据的时候再去除掉我们插入的ESC转义字符。
c、差错检测
比特差错:1可能变成0,0可能变成1。
误码率:在一段时间内,传输错误的比特占所传输比特总数的比率。
参错检测方法:循环冗余检测法(不做过多要求)。
4、点对点的PPP协议
重点掌握PPP协议的帧格式
a、各字段的意义
帧的开始或结束标志:十六进制编码7E,二进制01111110
首部中的地址字段A:十六进制代码FF,二进制11111111
首部中的控制字段C:十六进制代码03,二进制00000011
b、字节填充
跟点对点信道的数据链路层的三个问题中的透明传输类似,但是有自己的规则。
数据段中出现以下情况:
7E—>7D,5E
7D—>7D,5D
若信息段中出现ASCII码的控制字符(数值小于0x20),字符前面加7D
c、零比特填充
保证信息段中不能出现连续的6个1,所以只要发现有5个连续的1,就在后面加0。
B、使用广播信道的数据链路层
1、以太网
以太网发送的数据都使用曼彻斯特编码的信号,以太网的编码方式需要每一位数据进行两次跳变。所以在以太网上传输信息码元速率是比特率的2倍。
2. CSMA/CD协议
CSMA/CD意思是载波监听多点接入/碰撞检测。
多点接入说明是总线型网络,许多计算机以多点接入的方式连接在一根总线上。协议的实质是载波监听和碰撞检测。
载波监听就是检测信道,不管在发送前,还是在发送中,每个站都必须不停地检测信道。(检测总线的电平是否跳变)
在使用CSMA/CD协议时,一个站不可能同时进行发送和接收(但必须边发送边监听信道)。因此使用CSMA/CD协议的以太网不可能进行全双工通信而只能进行双向交替通信(半双工通信)。
关于CSMA/CD协议的一些重要内容
- 每一个站在自己发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。这一小段时间是不确定的,取决于另一个发送数据的站距离本站的距离。以太网的这一特点称为发送的不确定性。
- 最先发送数据的站最多经过2t就可以知道发送的数据帧是否遭受了碰撞。规定争用期为2t,具体为512比特时间。如果经过了争用期还未检测到碰撞,才能肯定这次发送不会发生碰撞。
- 以太网采用截断二进制指数退避算法来确定碰撞后重传的具体时间,推迟(退避)时间为512r比特时间。
- 最短的有效帧长为64字节,512比特,凡长度小于64字节的帧都是由于冲突而异常中止的无效帧。
- 强化碰撞:当发送数据的站发生碰撞,除了立即停止发送数据外,还要再继续发送32或48比特的人为干扰信号,以便让所有用户知道现在已经发生了碰撞。
- 以太网还规定了帧间最小间隔为96比特时间。当检测到信道空闲并且在96比特时间内仍然空闲,才能开始发送数据帧。
3、以太网的信道利用率
a=t/T0(t:单程端到端时延,T0:帧发送时间)越小越好
4、以太网的MAC层
MAC帧的格式:(数字均为字节数)
前同步码(7) + 帧开始定界符(1) + 目的地址(6) + 源地址(6) + 类型(2) + IP数据报(46~1500) + FCS(4)
以太网MAC帧:目的地址(6) + 源地址(6) + 类型(2) + IP数据报(46~1500) + FCS(4)
从MAC子层向下传到物理层时还要在帧的前面插入8字节(前同步码+帧开始定界符)
其他知识点补充
扩展的以太网
以太网的扩展也有两种方式:
(1)在物理层扩展以太网
(2)在数据链路层扩展以太网
A、在物理层扩展以太网
- 多个主机和集线器相连构成一个系(每个系就是一个独立的以太网),系和系连接到一个主干集线器上,实现以太网的扩展。
- 每一个系的以太网都是一个独立的碰撞域,此时每一个系的以太网的最大吞吐量是10Mbit/s。
- 当不同的系通过主干集线器连接在一起时,形成了一个更大的碰撞域,此时最大的吞吐量仍然是一个系的吞吐量10Mbit/s。
- 如果不同的系使用不同的以太网技术(如数据率不同),那么就不可能用集线器将他们互联起来。
B、在数据链路层扩展以太网
- 以太网交换机,实质是一个多接口的网桥。网桥可以对收到的帧根据其MAC帧的目的地址进行转发和过滤。
- 相互通信的主机独占传输媒体,无碰撞地传输数据。
未详细介绍的知识点
以太网的自学习算法
虚拟局域网
高速以太网
【EG】
1、A、B、C是100Mb/s的以太网交换机。试计算9台主机和两个服务器产生的总的吞吐量的最大值。
以太网交换机和集线器不同,独占传输媒体,无碰撞的传输数据
吞吐量:11*100Mb/s=1100Mb/s
2、A、B、C是100Mb/s的集线器。试计算9台主机和两个服务器产生的总的吞吐量的最大值。
集线器有碰撞域
吞吐量:5*100Mb/s=500Mb/s
3、所有交换机都换成100Mb/s的集线器。试计算9台主机和两个服务器产生的总的吞吐量的最大值。
吞吐量:100Mb/s
4、填写下表
动作 | 交换表的状态 | 向X接口转发帧 |
---|---|---|
A—>D | 写入(A,1) | 所有接口转发 |
D—>A | 写入(D,4) | 1 |
E—>A | 写入(E,5) | 1 |
A—>E | 不变 | 5 |