MAC 地址
在局域网中,硬件地址又称为物理地址,或 MAC 地址。 802 标准所说的“地址”严格地讲应当是每一个站的“名字”或标识符。 将48位的“名字”称为“地址”仅仅是一种习惯。
IEEE 的注册管理机构 RA 负责向厂家分配地址字段的前三个字节(高位 24 位)。 地址字段中的后三个字节(低位 24 位)由厂家自行指派,称为扩展标识符,必须保证生产出的适配器没有重复地址。 这 48 位MAC地址已被固化到适配器ROM中,又称为适配器地址或适配器标识符EUI-48。
- 48位全1为广播地址;
- 第一字节最低位(I/G)为0,表示是单播地址,为1是组播地址;
- 第一字节次低位(G/L)为0,表示是局部地址,为1是全局地址。
适配器检查 MAC 地址 :适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址。如果是发往本站的帧则收下,然后再进行其他的处理。 否则就将此帧丢弃,不再进行其他的处理。 “发往本站的帧”包括以下三种帧:
- 单播(unicast)帧(一对一)
- 广播(broadcast)帧(一对全体)
- 多播(multicast)帧(一对多)
以太网MAC帧格式有两种标准:
- DIX Ethernet V2 标准
- IEEE 的 802.3 标准
最常用的 MAC 帧是以太网 V2 的格式。
以太网 V2 的 MAC 帧格式
- 目的地址字段 6 字节
- 源地址字段 6 字节
- 类型字段 2 字节 :类型字段用来标志上一层使用的是什么协议,以便把收到的 MAC 帧的数据上交给上一层的这个协议。
- 数据字段 46 ~ 1500 字节 : 数据字段的正式名称是 MAC 客户数据字段
最小长度 : 64 字节 - 18 字节的首部和尾部 = 数据字段的最小长度
当数据字段的长度小于 46 字节时,应在数据字段的后面加入整数字节的填充字段,以保证以太网的 MAC 帧长不小于 64 字节。 - FCS 字段 4 字节 : 当传输媒体的误码率为 1*10-8 时,MAC 子层可使未检测到的差错小于 1 * 10-14。
- 为了达到比特同步,在传输媒体上实际传送的要比 MAC 帧还多 8 个字
帧的前面插入的 8 字节中的前 7 个字节是前同步码,用来迅速实现 MAC 帧的比特同步。第8个字节是帧开始定界符,表示后面的信息就是MAC 帧。
无效的 MAC 帧
- 帧的长度不是整数个字节;
- 用收到的帧检验序列 FCS 查出有差错;
- 收到的帧中客户数据字段的长度不在 46 ~ 1500 字节之间。(有效 MAC 帧长为 64 ~ 1518 字节)
对于检查出的无效 MAC 帧就简单地丢弃。以太网不负责重传丢弃的帧。
帧间最小间隔
帧间最小间隔 :帧间最小间隔为 9.6 μs,相当于 96 bit 的发送时间。一个站在检测到总线开始空闲后,还要等待 9.6 μs 才能再次发送数据。这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。