网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

以太网发送器算法

更新时间:2026年03月27日   作者:spoto   标签(Tag):

先决条件:支持以太网协议,且了解以太网帧的格式。

以太网适配器或网络接口卡(NIC)它是一种硬件设备/组件,能够让您向计算机发送和接收数据。它可以通过有线或无线方式连接到网络中。

假设我们有一台拥有以太网适配器的主机计算机。连接计算设备的以太网线,可以通过收发器与主机计算机中的以太网适配器(即NIC卡)相连。收发器既具有发送功能,也具有接收功能。

  

我们可以将以太网电缆连接到以太网适配器(NIC卡)的接口上。不过,为了将以太网电缆连接到以太网适配器(NIC卡)的接口上,我们需要使用RJ45接口(8针型接口,用于通过铜线连接以太网设备)。

以太网访问协议:

  1. 算法通常被称为……以太网媒体访问控制(MAC)该功能是通过以太网适配器(NIC)中的硬件来实现的。
  2. 以太网的连接方式CSMA/CD(具有碰撞检测的载波侦测多路访问)
  3. 编码方式是什么?曼彻斯特编码技术用于将数据位转换为信号。

采用曼彻斯特编码技术的原因在于:以太网电缆通过端口与以太网适配器相连。因此,应用层的数据会被传输到传输层,然后再被传递到网络层。最终,这些数据会到达数据链路层——也就是现在存在NIC卡所在的位置。

因此,由主机计算机生成的帧需要被放置在以太网电缆上(即通过通道进行传输)。当主机计算机想要将数据或信息发送到通道时,我们需要使用某种编码技术来传输这些数据。

编码对于将主机计算机生成的特定数据/帧转换为信号非常重要。例如,铜缆以电信号的形式传输数据,而以太网电缆则只能传输信号而已。

以太网传输算法:

  1. 当适配器(主机计算机)有要发送的帧,且线路处于空闲状态时,它会立即发送该帧。
  2. 消息中的数据大小上限为1500字节(即以太网帧中数据或有效载荷的最大尺寸)。这意味着,适配器可以占用固定长度的线路来传输这些数据。
  3. 当适配器负责发送数据,而线路(通道)处于繁忙状态时,适配器会等待线路空闲后,立即开始传输数据。
  4. 据说,以太网是一种基于CSMA/1协议的持续传输协议。也就是说,当处于忙碌状态的线路变得空闲时,具有要发送数据的适配器的传输概率始终为1。
  5. 由于以太网没有集中式的控制方式,因此两个或更多的以太网适配器可以在同一时间开始传输数据。这种情况可能是因为两条线路都处于空闲状态,或者因为两个适配器都等待线路从繁忙状态变为空闲状态。例如,假设有两台主机通过以太网线连接在一起。当两条线路都处于空闲状态时,它们就会在同一时间发送数据,这就导致了数据冲突。
    在以太网中,当帧相互碰撞时,不存在集中式的控制机制。因此,这种算法(即以太网发送器算法)会向主机发出信号,提示发生了碰撞。这就是为什么以太网接入方式被称为CSMA/CD的原因。
  6. 当两个以太网适配器同时开始传输数据帧时,这些帧很可能会在网络中发生碰撞。
  7. 由于以太网支持碰撞检测功能,因此每个发送方都能及时发现是否存在碰撞现象。
  8. 在适配器检测到自己的帧与另一个帧发生碰撞的那一刻,它会立即发送一个32位的干扰序列,以便其他主机能够知道发生了碰撞。这样一来,主机就会立即停止传输数据。
    注意: 
    “干扰序列”是指工具通过以太网网络发送的信号,用于指示网络中发生了冲突。该信号的长度为32位,这样的长度足以覆盖整个冲突域,从而让所有传输站都能检测到冲突的发生。
  9. 因此,发射器在出现冲突的情况下,至少会发送 96 比特的数据。64位前导码 + 32位干扰序列
    注意: 
    在前置码中,用于实现比特同步。在E模式下,8个字节的前置码以及帧的起始部分共同构成了64位的模式。

主机需要发送96位数据的原因在于:主机必须发送32位的干扰序列来避免冲突,而仅仅32位的数据显然是不够的。因此,主机还需要附加64位的前导码。

Runt Frame: 
我们知道,以太网不会产生长度小于64字节的帧。显然,那些过长的帧通常是由于碰撞所导致的。当两个帧发生碰撞时,就会形成“过长的帧”。

其他导致画面比例失调的原因包括:

  1. 网络卡/网卡出现故障。
  2. 缓冲区溢出现象(即当缓冲区在处理两个设备或进程之间的数据传输时,传输数据的速度低于从缓冲区读取数据的速度时,就会发生这种情况)。
  3. 双工不匹配:线路的一侧处于半双工模式,而另一侧则处于全双工模式。/ 软件问题。


以太网传输器算法——最坏情况下的表现:

  
 

  1. 主机“A”在时刻‘t1’发送了一个帧。
  2. A的帧在时间‘t1+d1’时到达目的地B。(其中,‘d1’表示传输或传播所需的时间延迟。)
  3. “B”在时间‘t1+d1’开始传输数据,随后与“A”的框架发生碰撞。
  4. “B”帧(32位)在时间‘t1+2d1’时到达点A。

假设一帧中包含200位数据。除了最后一位之外,所有位都由“B”进行传输和接收。 “B”接收到最后一份数据的时刻,与“B”开始发送数据的时刻是同一时间。 因此,会发生单比特冲突。 在这里,当‘B’在‘t1+d1’时刻开始传输时,‘A’发送的数据帧也会在‘t1+d1’时刻到达‘B’。 因此,这两种框架都无法被使用。 这个框架就变成了“瘦弱”的框架了。 “B”开始传输帧的时刻是“t1+d1”,因此,帧到达“A”的时机为“t1+d1+d1”=“t1+2d1”。

指数型退避法:

  • 指数退避是一种被以太网所采用的技术,用于降低发生碰撞的概率。
  • 一旦以太网适配器检测到冲突并停止传输,它就会等待一段时间。
  • 在预测到某个时间段后,以太网适配器会再次尝试传输。如果以太网算法仍然发现信道被占用,那么它会将等待时间加倍,然后再尝试一次。例如,如果节点最初等待了1秒钟,那么它会继续等待2秒钟,然后是4秒钟,最后是8秒钟,直到信道变得空闲为止。
  • 当通道最终处于空闲状态时,以太网适配器会将帧放入该通道中。
  • 这种在每次重新传输时,将延迟间隔乘以两倍的策略,被称为“指数式退避策略”。
              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料