1 基本概念

  • 链路:是从一个结点到相邻结点的一段物理线路(下图红色或者蓝色的线就是链路,链路不能跨过路由或者交换机结点)。

  • 数据链路:是在链路的基础上增加了一些必要的硬件(如网络适配器)和软件(如协议的实现),也就是加上的协议。

虽然链路定义不能跨过节点,但有时候说同一段链路,其实就是同一段局域网,也就是交换机连接成的局域网网络。

alt text

局域网属于数据链路层:

  1. 局域网虽然是个网络。但我们并不把局域网放在网络层中讨论。这是因为在网络层要讨论的是多个网络互连的问题,是讨论分组怎么从一个网络,通过路由器,转发到另一个网络。

  2. 同一个局域网中,分组怎么从一台主机传送到另一台主机,但并不经过路由表IP转发。而是通过MAC地址,通过交换表发送到相应网络接口。

数据链路层的作用:同一局域网(交换机组成的局域网,或者路由器的LAN组成的局域网)内进行数据传输。

2 数据链路层的协议

首先 EthernetIEEE802.3PPPHDLC 都是数据链路层的协议,只不过后面三个不常用而已,数据链路层最常用的协议是 Etnernet以太网协议

2.1 通过MAC地址标识不同的设备

为什么要媒体接入控制(MAC)?

alt text

alt text

alt text

2.2 以太网协议

我们下面对以太网V2协议进行学习

alt text

alt text

2.2.1 如何区别不同的帧

以太网的帧是没有结束定界符,用的是曼切斯特编码,如果没有数据了就没有电压了,接收端在接收的时候,发现后面没有跳变电压了,那就代表帧结束了。

物理层会添加前同步码,目的是使接收方的时钟同步,表示后面马上到来的是MAC帧,另外以太网还规定了帧间间隔为96比特时间,因此,MAC帧不需要帧结束定界符。

alt text

这些同步码在抓包的时候是没有的!!!

alt text

3 数据链路层的实例

数据链路层的实例可以通过交换机章节、ARP协议章节进行进一步学习。