数据链路层
数据链路层基本概念及基本问题
基本概念
- 数据链路层的信道类型
(1)点对点信道:这种信道使用一对一的点对点通信方式
(2)广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信 道协议
来协调这些主机的数据发送 - 链路:是一条点到点的物理线路段,中间
没有
任何其他的交换结点。
一条链路只是一条通路的一个组成部分。 - 数据链路
▪除了物理线路
外,还必须有通信协议
来控制这些数据的传输。若把实现这些协议的硬件和软件
加到链路上,就构成了数据链路。
▪现最常用的方法是使用适配器
(即网卡)来实现这些协议的硬件和软件。
▪一般的适配器都包括了数据链路层
和物理层
这两层的功能。 - 帧
- 数据链路层之间传输的数据单位是
帧
(像一个数字管道)
三个基本问题
封装成帧
帧还未发送完,发送端出了问题,只能重发该帧。接收端却收到了前面的“半截帧”,它会丢弃
透明传输
差错检验(重点)
-
差错控制:
(1)传输过程中可能会产生比特差错
:1 可能会变成 0 而 0 也可能变成 1。(实际信道不够理想)
(2)在一段时间内,传输错误的比特占所传输比特总数的比率
称为误码率
BER (Bit Error Rate)。误码率与信噪比
有很大的关系。
(3)为了保证数据传输的可靠性
,在计算机网络传输数据时,必须采用各种差错检测措施
。 -
循环冗余校验(CRC):
(1)在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术。
(2)在发送端,先把数据划分为组。假定每组 k 个比特。
(3)我们在 每组数据 的后面再添加供差错检测用的 n 位冗余码一起发送。 -
冗余码的计算:
(1)用二进制的模 2 运算进行 2^n 乘 M 的运算,这相当于在 M 后面添加 n 个 0。(二进制的M乘以2的N次方)
(2)得到的 (k + n) 位的数除以事先选定好的长度为 (n + 1) 位的除数 P,得出商是 Q 而余数是 R,余数 R 比除数 P 少1 位,即 R 是n 位。
(3)借1顶2, 借位不体现(向前一位结一位,前一位不变)所以计算时只看当前第一位。(加法不进位) -
注意点:
除数4位,余数必须为3位,
被除数:原始数据+n个0
除数:可以是1101等,可以是生成多项式
模二减法
FCS一定要补足n位
发送:原始数据+冗余码拼接发出去
上述PPT中101101对应的冗余码位数:5位 -
区别两个概念(细节)
-
接收端对收到的每一帧进行CRC检验:
余数只判断是不是0即可,不要求多少位。
-
小结
(1) 仅用循环冗余检验 CRC 差错检测技术只能做到无差错接受
(accept)。
▪“无差错接受”是指:“凡是接受的帧(即不包括丢弃的帧),我们都能以非常接近于 1 的
概率认为这些帧在传输过程中没有产生差错”。也就是说:“凡是接收端数据链路层接受的帧都没有传输差错”(有差错的帧就丢弃而不接受)。
(2)要做到“可靠传输”(即发送什么就收到什么)就必须再加上确认和重传机制
。
(考虑:帧重复、帧丢失、帧乱序的情况)
(3)可以说“CRC是一种无比特差错,而不是无传输差错的检测机制”
。
(OSI/RM模型的观点:数据链路层要做成无传输差错的!但这种理念目前不被接受!)
两种情况下的数据链路层
使用点对点信道的数据链路层
- PPP协议
(1). 现在全世界使用得最多的数据链路层协议是点对点协议PPP
(2)用户使用拨号电话线接入因特网时,一般都是使用 PPP 协议。
-
PPP协议帧格式(背过)
PPP有2个字节的协议字段:
◦ 0x0021 — PPP 帧的信息字段就是IP 数据报。
◦ 0xC021 — 信息字段是 PPP 链路控制数据。
◦ 0x8021 — 表示这是网络控制数据。
◦ 0xC023 — 信息字段是安全性认证PAP。
◦ 0xC025 — 信息字段是LQR。
◦ 0xC223 — 信息字段是安全性认证CHAP。 -
字节填充
- 零比特填充法
- 不使用序号和确认机制
使用广播信道的数据链路层
铺垫
-
局域网的拓扑
(1)星形网:(广播信道)
集线器的冲突域:A和B发,CDE都能收到,CDE之间不能同时通信。(怎么发广播使得A、BCDE)
(2). 总线网:
和集线器工作原理一样,为广播信道。
(3). 树形网:(广播信号)
(4). 环形网:
一般是受控的,使结点间共享。
-
局域网的特点与优点
(1)局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。
(2)局域网具有如下的一些主要优点:
▪具有广播功能
,从一个站点可很方便地访问全网。局域网上的主机可共享连接
在局域网上的各种硬件和软件资源
。
▪便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。
▪提高了系统的可靠性、可用性和生存性。
-
初识以太网
CSMA/CD
-
载波监听多点接入/碰撞(冲突)检测 CSMA/CD
(1)“多点接入”表示许多计算机以多点接入的方式连接在一根总线上。(广播信道都可以)
(2)“载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
“载波监听”就是用电子技术
检测总线上
有没有其他计算机发送的数据信号。
(3) 碰撞检测:
“碰撞检测”就是计算机边发送数据边检测信道上的信号电压
大小。
▪当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。
▪当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞。
▪所谓“碰撞”就是发生了冲突。因此“碰撞检测”也称为“冲突检测”。
/dadaddddadadaddadadadadadadad/
检测到碰撞后:
▪在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的信息来。
▪每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送
,免得继续浪费网络资源,然后等待一段随机时间
后再次发送。
传输的媒体确定了,这些信号传输的速度也就确定了。
在A、B两站中,双方都检测到碰撞信号:
最短用时为:tao(像t一样的符号,含义见上图), (当两方同时发送)
最长用时为:2 * tao(马上到B时,B刚发了)
A站发送一个信号,经过tao时间内没有检测到冲突,但论该信号后续还是有可能冲突的。但如果是2tao都没检测到冲突,那就说明不会检测到该信号冲突了。
2tao就是争用期。 -
重要特性:
➢使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信
(半双工通信)。
➢每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
➢这种发送的不确定性使整个以太网的平均通信量远小
于以太网的最高数据率。 -
争用期 与 最短有效帧长:
(1)最先发送数据帧的站,在发送数据帧后至多经过时间 2tao(两倍的端到端传播时延)就可知道发送的数据帧是否遭受了碰撞。
(2)经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞
(3)
最短有效帧长 = 2 tao * v
发送的信息小于最短有效帧长,我们会选择填充到最短有效帧长的长度,若接收端收到小于最短有效帧长的信息,肯定是因为冲突而造成的,会丢弃。
- 二进制指数类型退避算
以太局域网(以太网)
概述
数据帧在以太网中封装(封装好的叫MAC帧)具有特殊性:帧尾没有定界符(不会有电频跳转,说明数据没了。)
拓扑