首先Ethernet、IEEE802.3、PPP和HDLC都是数据链路层的协议,只不过后面三个不常用而已。Ethernet和IEEE802.3属于以太链路层协议,数据链路层最常用的协议是Etnernet以太网协议。
定义:
Ethernet以太网协议,用于实现链路层的数据传输和地址封装
简史:
- Experimetal Ethernet
1973至1980年,是实验性以太网(Experimental Ethernet)研发阶段。这时的通信线路材质用的是同轴电缆,速度可达367k bytes/s
- Ethernet Version 1
1980至1981年,第一代以太网技术被Digital,Intel,Xerox三家公司联合研发出来了,第一代以太网技术以这三家公司的首字母组合来命名,即DIX,版本1.0。以太网可以工作在更粗的同轴电缆上,速度可达1.25M bytes/s 。
- Ethernet Version 2
在1982年,DIX1.0被DIX2.0取代了,其标准一直沿用至今,也称Ethernet II。 第二代以太网的帧数据包格式如下:
- IEEE 802.3 Standard
1983年,IEEE为推进所有的网络设备所使用的协议标准化,制定了802.3 以太网协议。英文称IEEE 802.3 Standard.
以太网数据帧的封装
从上图可以看到 Ethernet II帧
目的地址:6字节,目的地址字段确定帧的接收者。
源地址:6字节,源地址字段标识帧发送者。
当使用六个字节的源地址字段时,前三个字节表示由IEEE分配给厂商的地址,将烧录在每一块网络接口卡的ROM中。而制造商通常为其每一网络接口卡分配后字节。其实目的、源地址就是我们经常说的MAC地址,比如00:1A:A0:31:39:D4就是一个MAC地址。
类型:2字节,用来标识上一层所使用的协议类型,如IP协议(0x0800),ARP(0x0806)等。
数据:以太网包最小规定为64字节,不足的也会填充到64字节。以太网包的最大长度是1518字节,数据字段长度范围为46到1500,
这是为什么呢?因为以太网包最小规定为64字节,不足的也会填充到64字节。而以太网帧格式的其他部分加起来是6+6+2+4=18字节,
所以数据部分的最小长度为64-18=46字节;而以太网包的最大长度是1518字节,因此1518-18=1500字节。
FCS:帧校验字段,即Frame Check Sequence,用来保存CRC(循环冗余校验)校验值。