Data Link Layer-MAC&LLC
以太网技术
局域网技术标准
Data Link layer
两个子层:
MAC: Media Access Control
transitions down to the media
负责介质访问控制
定义了帧如何传输 (Defines how to transmit frames on the physical wire)
指定物理地址 (Handles physical addressing )
定义了拓扑管理 ( Define network topology )
线路规程 ( Define line discipline)
LLC: Logical Link Control
transitions up to the network layer
负责链路一些服务相关内容
兼容不同的介质访问标准
通过逻辑控制来做封装
logically identifies different protocol types and then encapsulates them
Use SAP identifier to perform the logical identification
The type of LLC frame depends on what identifier the upper layer protocol expects
MAC帧结构规范
Preamble(前导码)
7+1个字节
告诉接收方要来一个帧了,原因是局域网的通讯是不面向连接的,必须在前面发送前导码才能让接收方有时间提前做好准备。
内容:
10101010...101010(总共7个字节)
最后一个字节:10101011结束
Dest(目的地址)
6 bytes
补充:mac地址
MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址
长度:48 bits/6 bytes
MAC地址也叫物理地址、硬件地址,由网络设备制造商生产时烧录在网卡的EPROM。
结构:xxxx.xx XX.XXXX
前6位(OUI: Organizational Unique Identifier):代表网络硬件制造商的编号,它由IEEE分配,
后6位:代表该制造商所制造的某个网络产品(如网卡)的系列号。
特殊:最高字节的低两位有特殊含义
b0 = 0: 单播; b0 = 1: 组播
b1 = 0: 全球唯一; b1 = 1: 本地唯一
特殊的目的地址:FFFF.FFFF.FFFF
广播用途,作用有两种,一是目标地址未知的时候,广播出去让接收方能够接收到;二是目标是所有用户,比如向外广播自己的信息等等
6个字节的目的地址,6个字节的源地址
先放目的地址:设备基于地址来判断下一步工作(丢弃或转发),省去解析无用的数据,提高效率
source
6 bytes
发送源的地址
Length
2 bytes
早期规范:放帧的长度,其实不用放长度信息也行,编码是曼彻斯特编码,有信号是有电位,无信号是没有电平,可以凭此判断信号的终止
后期规范(Ethernet II):放type,标志上一层使用的是什么协议,例如当类型字段为0x0800代表IP数据报,0x8137代表该帧是由Novell IPX发过来的等等
data
46-1500bytes
下限:64-18 = 46 bytes
原因:双绞线的有效长度大约为100m,为了在传输过程中保持对整条链路的占据,避免其他设备的冲突,数据长度应该大于512bits,也即64bytes,再用64减去首尾的字段长度,得到的就是数据的最短长度。
上限:1500 bytes
原因:怕传输数据量太大导致数据出错
FCS
4 bytes
存储循环冗余校验值
LLC
管理通讯双方逻辑控制
支持面向、不面向连接的规格
支持不同的mac sublayer
封装:获得packet,将控制逻辑放到packet前面