计网之数据链路层
2018-12-22 本文已影响0人
bps
数据链路层使用的信道主要有如下两种:
- 点对点信道 一对一的点对点通信方式
- 广播信道 一对多的广播通信方式
数据链路层的三个基本问题
封装成帧 透明传输 差错检测
封装成帧
- 内容:对数据(IP数据报)前后添加首部和尾部,构成一个帧。接收端通过首部和尾部识别帧的开始和结束,即帧定界。
- MTU:Maximum Transfer Unit链路层协议规定所能传输帧的数据部分的长度上限
- 帧界定符:当数据是ASCII编码,如 SOH表示帧开始符 EOT表示帧结束符 是十六进制编码的数字。
透明传输
- 内容:当帧中的数据部分不是ASCII编码的,如果是一些二进制代码等等,很可能会与帧界定符冲突,这时候就需要对帧界定符设置一种方法维持其功能。透明传输表示无论什么样的比特组合的数据,都能按照原样没有差错地通过这个数据链路层。数据链路层对于所传送的数据而言是透明的,后者看不到有什么妨碍自己正确传输。
- 解决方案:在SOH EOT前插入一个转义字符ESC,这种方法称为字符填充或字节填充。如果转义字符也冲突则在转义字符前再加一个转移字符,接收端接收到连续的两个转义字符时,删除前一个。
差错检测
- 内容:使用了循环冗余校验码CRC(Cyclic Redundancy Check)进行差错检验。
- CRC:若传送的数据M=101001(k=6)。在M后面添加n位冗余码,构成一个帧共(k+n)位一起发出去。若n=3,商定的除数P=1101,Q=M<<n 再向P做模二除法。得到的余数001共n位添加到M的后面,得到101001001。这个冗余码被称为帧检验序列FSC(Frame Check Sequence)。接收方进行CRC检测,得到余数R=0,否则有差错,丢弃该帧。
模二除法:
PPP点对点协议
用于点对点信道
帧格式
标志字段(Flag) F 规定为)0x7E (01111110) 一字节
协议字段 两字节 表示信息部分的类型 如IP数据报- 字节填充 (异步传输时)
0x7E 转变成 0x7D,0x5E
0x7D转变成0x7D,0x5D
如果出现ASCII的控制字符在前插入0x7D,并改变其编码- 零比特填充 (同步传输时(一连串的比特连续传送))
连续五个1后插入一个0
共享信道的方法
- 静态划分信道 频分复用等
- 动态媒体接入控制 又称多点接入
2.1随机接入 用户可随机发送信息
2.2受控接入 用户不能随机发送信息,需要服从一定控制
以太网
属于随机接入而共享信道的一定标准的局域网
使用曼彻斯特编码
采用CSMA/CD协议
半双工通信
CSMA/CD协议
载波监听多点接入/碰撞检测(Carrier Sense Multiple Access with Collision Detection)
- 多点接入
指许多计算机以多点接入的方式连接在一根总线上- 载波监听
检测总线上是否有其他计算机在占用。每个主机都需要不断检测信道。- 碰撞检测
边发送边检测信道上的电压变化情况。- 比特时间
1比特时间指的是发送1比特所需的时间- 争用期
又称碰撞窗口 2τ 其中τ为单程端到端的传播时延,而某端点只有经过2τ才能知道数据帧是否遭受了碰撞。具体的争用时间是51.2us 对于10Mbit/s以太网,可以发送512bit的数据,又称512比特时间- 截断二进制退避算法
从集合[0,1,...,(2^k-1)中随机取出一个数,记为r,则重传推后的时间是r*2τ,
k=Min[重传次数,10]
当重传次数=16,则丢弃该帧,并反馈。- 最短帧长
64字节。即512bit。如果发送的数据非常少,则加入一些填充字节。发送这64字节的数据需要2τ的时间,如果发生碰撞,则会发生少于64字节的数据,接收方收到小于64字节的数据则丢弃。- 人为干扰信号
当发生了碰撞,碰撞双方都需要发送一个32或者48bit的认为干扰信号,需要Tj的时间。若检测到碰撞的时间是Ta,则信道被占用的时间为Tj+Ta+τ- 帧间最小间隔时间
9.6us 使得各个收到数据帧的站接收缓存来得及清理。
MAC地址
6字节 48位
- OUI
组织唯一标识符 又称公司标识符 前24位 由IEEE出售- EUI
扩展标识符 低位24位 公司自行决定- I/G位
第一字节的最低位,即最左边的那一位。Individual/Group 当I/G为0时,地址字段表示单个站地址,当为1时,表示组地址,用于多播。
0 G/L位 为0时表示属于全球管理,即于IEEE购买。为1是本地管理。
MAC帧
- 类型 标志上一层使用的协议类型 IPv4
- 数据长度 46-1500字节 其中46=64-6-6-2-4
- 帧长度检测 曼彻斯特编码的每一个码原的正中间一定有一次电压的转换。当发送方把以太网发送完毕后,就不再发送其他码元了。电压也就不再变化了,接收方很容易找到数据字段的结束位置。
- 填充字段长度 由IP层设置
- 前同步码 7字节(01交替) 使接收端的适配器在接受MAC帧时能迅速调整其时钟频率,实现与发送端的时钟同步 由硬件生成
- 帧开始界定符 1字节,10101011 由硬件生成
以太网的拓展
物理层上的拓展
使用光钎和光钎调制解调器将独立的以太网连接起来
缺陷:不能单独工作 木桶原理工作速度降低数据链路层上的拓展
使用了以太网交换机。
以太网交换机
本质上是一个多接口的网桥,全双工通信,具有并行性,使多台主机能同时通信。内部具有一个帧交换表,又称地址表。
以太网的自学习功能
若交换表中没有目标项目(MAC地址,交换机接口号,有效时间),则通过广播的方式向所有接口发送数据帧,记录发送端的信息。若有目标项目则不需要采取广播。
广播风暴 若两个交换机通过两条链路连接,因为自学习功能,可能会发生兜圈子的问题。通过生成树协议STP来解决,从逻辑上切断某些链路,生成无环路的树状结构。