功能与定义
在OSI/RM中定义:数据链路层是在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧在信道上的“透明”传输
- 链路:是一条无源的点到点的物理线路段中间没有任何其他的交换结点
- 数据链路:除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路(数据链路=链路+协议-链路中通信双方的信道使用形式不同,则相应控制协议不同)
基础概念
- 主要使用信道:点对点信道(一对一)、广播信道(一对多)
- 帧(Frame):数据链路层的数据单位
- 仅从数据链路层观察:服务是垂直的,协议是水平的
基本功能
1.封装成帧
——在一段数据的前后分别添加首部和尾部,确定帧的界限(帧定界)如特殊的控制字符
2.透明传输
——指不管所传数据是什么样的比特组合,都应当能够在链路上传送。当所传数据中的比特组合恰巧与某一个控制信息完全一样时(编码重复),会造成内容相关性冲突,导致不透明,解决办法:字节/字符填充
3.差错控制
——广泛使用循环冗余检验CRC方法,核心运算:模2除法
PPP 点对点协议
PPP协议的组成
- 一个将IP数据报封装到串行链路的方法
- 链路控制协议 LCP(Link Control Protocol)
- 网络控制协议 NCP(Network Control Protocol)
PPP协议运行的五个阶段(顺序从上到下)
- 建立链路(LCP)
- 验证(PAP/CHAP)
- 网络控制协商(NCP)
- 会话维持阶段
- 终止PPP链路(LCP)
当PPP用在同步传输(以固定的时钟节拍来发送数据信号,面向比特)链路时,协议规定采用硬件来完成比特填充–零比特填充(发送端扫描发现有5个连续1,则在后面填入一个零,接收端反之)
当PPP用在异步传输时(将比特分成小组传送,发送方可以在任何时刻发送这些比特组,而接收方不知道它们会在什么时候到达)时,就使用一种特殊字符填充法
PPPoE(以太网上的PPP)
- DSL中的常用协议
- 以太网与拨号网络之间的中继协议
广播信道的数据链路层
- 局域网最主要的特点:网络为一个单位拥有,且地理范围和站点数目均有限
- 目前最常用的局域网:以太网(Enthernet)
- 局域网的拓扑:星形网、环形网、树形网、总线网
- 以太网的两个标准:
DIX Enthernet V2 是世界上第一个以太网的规约1982 IEEE 的802.3标准1983(局域网)
为了适应多种局域网标准,局域网的数据链路层拆为两个子层
- 逻辑电路控制 LLC(Logical Link Control)子层
- 媒体接入控制 MAC(Medium Access Control)子层
MAC(硬件/物理地址)
- MAC地址=适配器地址=硬件/物理地址
- MAC地址–48位
- 前三字节:注册管理机构RA 负责给不同厂家分配的代码,后三字节:厂家自行指派,称为扩展标识符
适配器
- 网络接口板又称通信适配器或网络接口卡NIC,或“网卡”,是MAC协议的实现载体
- 进行串行/并行的转换
- 对数据进行缓存,速率匹配
- 安装设备驱动程序,通过操作系统与存储器等设备协调工作
- 实现以太网协议(封装-发送-地址检查-接收-有效判断-校验)
无效的MAC帧
- 帧的长度不是整个字节
- 数据字段的长度不在46~1500之间
- MAC帧长度不在64~1518之间
- 数据字段的长度与长度字段的值不一样
- 用收到的帧检验序列FCS,查出有差错
- 无效则丢弃