以太网将数据链路层的功能划分到了两个不同的子层:

1)         逻辑链路控制 (LLC) 子层

2)         介质访问控制 (MAC) 子层

逻辑链路控制 (LLC) 子层:

以太网,IEEE 802.2 标准规范 LLC 子层的功能,而 802.3 标准规范 MAC 子层和物理层的功能。逻辑链路控制处理上层与网络软件以及下层(通常是硬件)之间的通信。LLC 子层获取网络协议数据(通常是 IPv4 数据包)并加入控制信息,帮助将数据包传送到目的节点。第 2 层通过 LLC 与上层通信。

(也就说LLC子层是网络层和MAC层的桥梁,它从上层网络层得到数据加一些控制信息帮助数据包传送到目的节点。)

介质访问控制 (MAC) 子层:

介质访问控制 (MAC) 是数据链路层以太网子层的下半层,由硬件(通常是计算机网卡)实现。

         以太网 MAC 子层主要有两项职责:

1)         数据封装

2)         介质访问控制

         数据封装:

        数据封装提供三项主要功能:

l  帧定界:用于标识组成帧的一组比特。

l  编址:封装过程还提供数据链路层编址。帧中加入的每个以太网帧头都含有物理地址(MAC 地址),使帧能够传送到目的节点。

l  错误检测:接收节点将会创建一个 CRC,与帧中的 CRC 进行比较。如果两个 CRC 的计算一致,就可以相信已正确无误地收到该帧。

介质访问控制:

其功能是管理介质访问控制,包括启动帧的发送以及从冲突引起的发送故障中恢复。

以太网的冲突管理:在早期传统的以太网中解决冲突的技术是CSMA/CD,但是当设备数量和随之而来的数据流量增加时,冲突的上升就会给用户体验带来明显的负面影响。当前的以太网重大的发展是交换机取代的集线器解决了冲突,因为交换机可以隔离没个端口这样就有效的控制了冲突。

         以太网帧大小:

原来是1518字节,1998年发布的IEEE 802.3AC标准将允许的最大帧1522个字节。

如果发送的帧小于最小值或者大于最大值,接收设备将会丢弃该帧。帧之所以被丢弃,可能是因为冲突或其它多余信号而被视为无效。

- 封装数据包:

l            前导码和帧首定界符字段:用于同步发送设备与接收设备

l            目的 MAC 地址字段:是预定接收方的标识符

l           MAC 地址字段:标识帧的源网卡或接口

l            长度/类型字段:定义帧的数据字段的准确长度,此字段后来被用作 FCS 的一部分,用来确认是否正确收到报文。

l            数据和填充位字段:所有帧至少必须有 64 个字节。如果封装的是小数据包,就帧使用填充位增大到最小值。

l            帧校验序列字段:就是说当接受到一个数据帧,生成一个CRC来查找错误,如果匹配上了OK,如果匹配不上则丢弃此帧。

         MAC 地址结构:

             IEEE 要求厂商遵守两条简单的规定:

l 分配给网卡或其它以太网设备的所有 MAC 地址都必须使用厂商分配的 OUI 作为前 3 个字节。

l OUI 相同的所有 MAC 地址的最后 3 个字节必须是唯一的值(厂商代码或序列号)。

MAC 地址通常称为烧录地址 (BIA),因为它被烧录到网卡的 ROM(只读存储器)中。这意味着该地址会永久编码到 ROM 芯片中 - 软件无法更改。

               但是,当计算机启动时,网卡会将该地址复制到 RAM 中。在检查帧时,将使用 RAM 中的地址作为源地址与目的地址进行比对。网卡使用 MAC 地址来确定报文是否应该发送到上层进行处理。

         另一个编址层MAC地址通过本地介质在网络内部使用。

                       IP地址用于在网络之间通信。