导图社区 计算机网路-数据链路层
数据传输过程及以太网帧结构、可靠传输、HDLC协议、ppp协议
编辑于2020-04-26 00:16:13IP网络基础
数据传输过程及以太网帧结构
数据传输
交换机和路由器
交换机
拆封成帧,根据MAC地址决定是否转发
路由器
拆封成分组,根据目的网络地址查找路由表并转发
局域网帧的发送
单播
点对点发送
MAC地址的OUI
广播
一对多
MAC地址
FF:FF:FF:FF:FF:FF
多播
选择性发送
MAC地址的OUI
以太网帧
封装成帧
透明传输
含义
数据链路层对上层交付的数据无限制
面向字节
转义符
1字节,十字节为27
在帧定界符和转义符前加转义符
面向比特
帧定界符是01111110
在数据中每5个1后加一个0
MAC地址
位置
网卡的EEPROM中
作用
对网络个接口的唯一标识
种类
IEEE 802
前三个字节
组织唯一标识符OUI
第7位
0:全球管理
1:本地管理
第8位
0:单播
1:多播
后三个字节
网络接口标识符,厂商分配
随机MAC地址
前导码
前同步码
7字节,10交替码
接收端的适配器能调整时钟频率
实现位同步
帧开始定界符
1字节,10101011
标识开始和结束
FCS
概念
比特差错
01互换
误码率
错误比特占总数的比率
差错检测
奇偶校验
方法
数据后加1位校验位,表示1的个数为奇或偶数
缺点
只能检测出奇数个错误
循环冗余校验码CRC
方法
生成多项式G(x)
根据数据和生成多项式计算出冗余码
数据跟冗余码一起传输
优点
漏检率低
易用硬件实现
广泛用于数据链路层
缺点
不能定位错误位置
不能纠正错误
为提高传输效率,应使帧的数据长度尽可能大
考虑到差错控制,每种数据链路协议都规定了帧数据的长度上限,即最大传送单元MTU
以太网帧类型
Ethernet II
D.MAC
目的MAC地址
S.MAC
源MAC地址
Type
数据字段包含的高层协议
Data
最小:46字节
最大:1500字节
FCS
4字节的校验字段
判断
Type>=1536
IEEE 802.3
D.MAC
S.MAC
Length
LLC
D.SAP
S.SAP
Control
SNAP
Org Code
Type
Data
FCS
判断
Length<=1500
可靠传输
传输差错
比特差错
分组丢失
分组失序
分组重复
提供服务
不可靠传输服务
丢掉有误码的帧
可靠传输服务
实现发送什么,接收端就接收什么
有线
误码率低,不要求提供可靠传输服务
无线
误码率高,要求提供可靠传输服务
位置
一般出现在数据链路的上层
其他各层均可实现可靠传输
实现机制
停止等待协议SW
发送方
发送方发送一个分组后,就停止发送下一分组
若收到确认分组,则发送下一分组
若收到否认分组,则重发之前的分组
若计时器超时,则重发之前的分组
接收方
接收方通过序号(0/1)确认分组是否重复
若重复,则丢弃,并发送确认确认分组
缺点
信道利用率低
回退N帧协议GBN
概念
采用3个比特给分组编序号,即0-7
发送窗口1<WT<=2^n-1
WT=1:SW协议
WT>2^n-1:接受反无法辨认新、旧分组
接收窗口WR=1
发送方
未收到确认分组时可将窗口内的分组全部发送
收到已发送数据的确认,才向前滑动
收到多个重复确认,可在重传计数器超时前重传
窗口内已发数组分组超时重发时,后续在窗口内已发的分组也重传
接收方
接收到序号正确且无误码的分组,窗口前滑,发送确认分组
可在连续收到几个按序无误码的分组后,发送最后一个确认分组
或在有分组要发送才进行捎带确认
收到未按序的分组时,丢弃并对最近按序接收的分组确认
选择重传协议
概念
采用3个比特给分组编序号,即0-7
发送窗口1<WT<=2^n-1
WT=1:SW协议
WT>2^n-1:接受反无法辨认新、旧分组
接收窗口WR=WT
WT=1:GBN协议
WR>WT:无意义
发送方
未收到确认分组时,可将序号在发送窗口的多个分组发送
按序收到确认分组,才滑动窗口
若收到未按序到达的确认分组,记录,防止重传
接收方
接收未按序但无误码的分组
不采用累计确认
按序接收分组后,才滑动窗口
HDLC协议
概念
面向比特型的数据链路层协议
站
主站
发送命令帧
接收响应帧
对整个链路的控制系统的开启
流程控制
差错检测或恢复
从站
接收命令帧
发送响应帧
配合主站
复合站
发送接收命令帧、接收响应帧
控制整个链路
链路配置方式
非平衡配置
正常响应方式
从站得到主站允许才能发出响应
异步响应方式
从站可主动开始数据传输
平衡配置
异步平衡方式
两端的复合站有同等能力
结构
F标志
大小
8bit
作用
标识开始发送
固定编码
01111110
A地址
大小
8bit
作用
标识站地址
地址类型
非平衡
从站地址
平衡
应答站地址
11111111
全站地址
00000000
无地址
C控制
大小
8bit
作用
决定HDLC帧的类型
帧类型
I信息帧
N(S)
发送帧序号
P/F
P:询问
F:响应
成对出现
N(R)
下一次希望收到的帧序号
S监控帧
RR(00)
接收准备好
RNR(10)
接收未准备好
REJ(01)
拒绝接收
SREJ(11)
选择拒绝接收
U无编号帧
SNRM
置正常响应模式
SARM/DM
置异步响应模式/断开模式
SABM
置异步平衡模式
DISC/RD
断链/请求断链
RESET
复位
FRMR
帧拒绝
UA
无编号确认
I信息
大小
n*8bit
透明传输
“0”比特插入删除法
FCS校验码
大小
16或32bit
控制范围
A、C、I
F标志
大小
8bit
作用
标识结束发送
固定编码
01111110
数据通信
数据链路建立
数据传输
数据链路释放
1、3需用到无编号帧
工作实例
PPP协议
概念
点到点的数据链路层协议
分类
链路控制协议LCP
数据链路连接的建立、拆除和监控
用于MTU、质量协议、验证协议、魔术字、协议域压缩、地址和控制域压缩协商等参数的协商
网络控制协议NCP
协商在该链路上所传输的数据包的格式与类型,建立和配置不同网络层协议
结构
F标志
大小
8bit
固定编码
0x7E
A地址
大小
8bit
固定编码
0xFF
作用
无实际意义
C控制
大小
8bit
作用
无实际意义
固定编码
0x03
P协议
大小
8bit
作用
区分PPP数据帧中信息字段所承载的数据报类型
数据报类型
链路控制协议LCP
0xc021
网络控制协议NCP
0x8021
IP数据报文IP
0x0021
RAP协议的认证报文PAP
0xc023
CHAP协议的认证报文CHAP
0xc223
填充的内容为奇数
I信息
大小
nbit
最大
1500bit
透明传输
字节填充
7E转变成7D,5E
7D转变成7D,5D
ASCII控制符前插入7D,再将该字符加上0x20
比特填充
“0”比特插入删除法
FCS校验码
大小
16或32bit
F标志
大小
8bit
协商过程
链路不可用阶段
仅在检测到对方设备前存在
检测到物理线路激活则跃迁至下一阶段
链路断开后回到该阶段
链路建立阶段
发送配置报文来配置数据链路
报文参数不包括网络层协议的参数
验证阶段
链路建立阶段发出验证请求
验证之后才允许网络层协议数据包传输
传输数据包
链路控制协议
验证协议
链路质量检测
身份验证方式
PAP
明文,易被冒充
两次握手
Authenticate-Request被认证方向认证方明文发送用户名和密码
Authenticate-AckAuthenticate-Nakk认证方返回认证成功/失败信息
CHAP
三次握手
Challenge认证方发送用户名和随机报文
Response被认证方返回用户名和加密报文
Sucess/Failure比较,通过认证/不一致认证失败
网络层协议阶段
每种网络层协议通过相应网络控制协议进行配置
每个NCP协议可随时打开和关闭
传输数据包
LCP
NCP
网络层协议
链路终止阶段
PPP协议可随时终止链路
链路关闭
链路层通知网络层做相应操作
物理层拆除连接
验证失败
终止请求发出方断开连接
必须收到终止应答
或计数器超过最大终止计数器
终止请求接收方断开连接
必须等对方先断开
且发送终止应答后需至少一次重起计数器超时
断开后链路回到不可用状态
复合站2
复合站1
复合站2
数据传输
复合站1
从站1
从站2
主站
主站
数据传输
从站2
主站
从站1
主站