起序:本文摘录于《计算机网络(第七版)- 谢希仁》,里面也有自己对 MAC 帧 的理解。
| 五层协议体系结构 | 数据单元(数据单位) |
|---|---|
| 应用层 | message(消息) |
| 运输层 | segment(TCP 报文段) 或 datagram(UDP 用户数据报) |
| 网络层 | packet(IP 数据报(或简称数据报、分组或包)) |
| 数据链路层 | frame(帧) |
| 物理层 | bit(比特流) |
一、MAC 层的硬件地址
在局域网中,
硬件地址又称为物理地址或MAC地址。也就是咱们口中网卡地址。这个地址是由网络设备制造商在生产的时候就已经写在硬件内部了,是全球唯一的,不需要自己买回来之后再配置的。
MAC 地址:Media Access Control Address,直译为 媒体存取控制位址,也称为 局域网地址(LAN Address)。
# 查看自己的 MAC 地址,命令行输入 cmd
ipconfig /all
可以看到图片上内容:物理地址: D8-C4-97-90-39-2F,这就是自己电脑的真实地址。
- 有线网卡地址

- 无线网卡地址(和有线网卡地址类似,暂不截图)
MAC地址的长度为
48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开。地址的前24位是由生产厂家向IEEE申请的厂商地址,后24位就由生产厂家自行定拟了,代表设备编号。
下面以我电脑上的 MAC 地址 举例。
查询MAC地址

便民查询网
- 有线网卡地址查询

- 无线网卡地址查询(和有线网卡地址类似,暂不截图)
二、MAC 帧的格式
- 帧的最大传输单元(MTU):1500 字节
- 帧的最小传输单元:64 字节,因为
IP报文段最小为 46 字节
1、帧格式组成
帧头 + 上三层数据 + 帧尾
这里只介绍
帧头和帧尾,如果想了解上三层数据单元格式,可以关注我的博客,在博客中查找。

2、帧头
目的 MAC 地址 + 源 MAC 地址 + 类型 (头可破,血可流,这里顺序不能乱),可以看出
帧头字节长为14 字节。
| 字段 | 字节长 |
|---|---|
| 目的 MAC 地址 | 6 字节 |
| 源 MAC 地址 | 6 字节 |
| 类型 | 2 字节 |
字段中
类型的作用:识别上层协议,为上层提供服务。下面举例:
| 类型的值 | 代表上层使用的协议 |
|---|---|
| 0x0800 | IP 协议 |
| 0x0806 | ARP 协议 |
3、数据字段
数据字段属于 IP层(网络层)的数据单元,这里不做详细介绍。
简单唠一下:数据字段的长度在
46 ~ 1500 字节之间。(46 字节:最小长度 64 字节减去18 字节的首部和尾部就得出数据字段的最小长度。)
4、帧尾
帧检验序列 FCS(Frame Check Sequence),是一段固定
4个字节的循环冗余校验码。使用 CRC 算法对整个数据进行计算得出的值,类似 hash 算法。
计算过程:
- 源节点发送数据帧时,由
帧的帧头和数据部分计算得出4个字节的FCS。 - 目的节点接收到后,用同样的方式再计算一遍得出
4个字节的FCS。 - 如果与接收到的
FCS不同,则认为帧在传输过程中发生了错误,从而选择丢弃这个帧。
注:FCS 提供了一种错误检测机制,用来验证帧在传输过程中的完整性。
如果对您有帮助,点个赞再走吧。
最后
以上就是生动猎豹最近收集整理的关于【网络】数据单元 - 数据链路层 - MAC 帧的全部内容,更多相关【网络】数据单元内容请搜索靠谱客的其他文章。
发表评论 取消回复