当前位置: 代码迷 >> 综合 >> 计算机网络 彻底搞懂链路层
  详细解决方案

计算机网络 彻底搞懂链路层

热度:101   发布时间:2023-09-30 10:58:59.0

带带弟弟彻底搞懂链路层这一次,搞懂数据链路层相关知识。计算机网络 彻底搞懂链路层https://mp.weixin.qq.com/s/G2J-e_Dz2dK_aQAqAdf_pw

计算机网络 彻底搞懂链路层

下面我们把关注点放在数据链路层,如果没有数据链路层,计算机网络也就不复存在;这就好比大楼没有了地基,人没有了腿;所以,数据链路层的知识也固然重要,不少小伙伴只把关注点放在 TCP 和 IP 这两个协议上,这是一种狭隘的思想,需要及时纠正,计算机网络可不只有 TCP 和 IP。下面 cxuan 就和你聊聊计算机中的数据链路层。 

数据链路层


数据链路层,按照 OSI 七层模型来划分的话,就属于物理层的上层

计算机网络 彻底搞懂链路层

数据链路层是一种协议层,它有很多协议。数据链路层用于跨物理层在网段节点之间传输数据,通常指以太网、无线局域网等通信手段。数据链路层提供了在网络的两个实体之间传输数据的功能,并且提供了差错检测用于纠正物理层中发生的错误

 

 

关键概念


在数据链路层中,链路层地址有很多种不同的称谓:LAN 地址、物理地址或者 MAC 地址,因为 MAC 地址是最流行的术语,所以我们一般称呼链路层地址指的就是 MAC 地址。

下面我们就来认识一下数据链路层的几个关键概念

打包成帧


打包成帧(framing): 在每个网络层数据报在传输之前,几乎所有的链路层协议都会将数据报用链路层封装起来。数据链路层从网络层获取数据后将其封装成为 ,如果帧太大的话,数据链路层会将大帧拆分为一个个的小帧,小帧能够使传输控制和错误检测更加高效。

帧就是 0 1 序列的封装。

一个帧由 Header、Payload Field、Trailer 组成,网络层数据报就封装在 Payload Field 字段中。根据不同的物理介质,每个帧的结构也不同。帧的组成如下

计算机网络 彻底搞懂链路层

帧中主要涉及的内容如下

  • 帧头(Frame header):它包含帧的源地址和目的地址。

  • 有效载荷(Payload Field):它包含要传递的数据和信息。

  • 尾部标记(Trailer):它包含错误检测和错误纠正位。

  • 标记(Flag):它标记了帧的开始和结束。

Flag 位位于帧的开头和结尾,两个连续的标志指示帧的结束和开始

计算机网络 彻底搞懂链路层

帧的类型主要有两种,固定大小的帧和可变大小的帧。

  • 固定大小的帧(Fixed-sized Framing):表示帧的大小是固定的,帧的长度充当帧的边界,因此它不需要额外的边界位来标识帧的开始和结束。

  • 可变大小的帧(Sized Framing):表示每个帧的大小是不固定的,因此保留了其他机制来标记一帧的结束和下一帧的开始。它通常用于局域网,在可变大小的帧中定义帧定界符的两种方法是

  • 长度字段(Length Field): 使用长度字段来确定帧的大小。它用于以太网(IEEE 802.3)

  • 结束定界符(End Delimiter): 经常用于令牌环

 

 

链路接入


链路接入主要指的是 MAC 协议,MAC(Medium Access Control) 协议规定了帧在链路上的传输规则。我们知道,数据链路层是 OSI 标准模型的第二层,数据链路层向下还能够细分,主要分为 The logical link control (LLC) 层和The medium access control (MAC) 层。

计算机网络 彻底搞懂链路层

LLC 层又叫做逻辑控制链路层,它主要用于数据传输,它充当网络层和数据链路层中的媒体访问控制(MAC)子层之间的接口。LLC 层的主要功能如下

  • LLC 的主要功能是发送时在 MAC 层上多路复用协议,并在接收时同样地多路分解协议。

  • LLC 提供跳到跳的流和差错控制,像是路由器和路由器之间这种相邻节点的数据传输称为 一跳

  • 它允许通过计算机网络进行多点通信。

MAC 层负责传输介质的流控制和多路复用,它的主要功能如下

  • MAC 层为 LLC 和 OSI 网络的上层提供了物理层的抽象。

  • MAC 层负责封装帧,以便通过物理介质进行传输。

  • MAC 层负责解析源和目标地址。

  • MAC 层还负责在冲突的情况下执行冲突解决并启动重传。

  • MAC 层负责生成帧校验序列,从而有助于防止传输错误。

在 MAC 层中,有一个非常关键的概念就是 MAC 地址。MAC 地址主要用于识别数据链路中互联的节点,如下图所示

计算机网络 彻底搞懂链路层

MAC 地址长 48 bit,在使用网卡(NIC) 的情况下,MAC 地址一般都会烧入 ROM 中。因此,任何一个网卡的 MAC 地址都是唯一的。MAC 地址的结构如下

计算机网络 彻底搞懂链路层

MAC 地址中的 3 - 24 位表示厂商识别码,每个 NIC 厂商都有特定唯一的识别数字。25 - 48 位是厂商内部为识别每个网卡而用。因此,可以保证全世界不会有相同 MAC 地址的网卡。

MAC 地址也有例外情况,即 MAC 地址也会有重复的时候,比如你可以手动更改 MAC 地址。但是问题不大,只要两个 MAC 地址是属于不同的数据链路层就不会出现问题。

  相关解决方案