bar*_*rix 6 networking hardware ethernet nic interrupts
一些背景。
几周前,在没有进行太多故障排除的情况下更换了一个盒子上的网卡,以找到问题的明确解决方案。一位高级管理员与一位初级管理员因硬件中断和以太网卡发生了小争执。具体来说,它们是如何工作的。初级管理员给出了一个含糊的答案,坚称自己是正确的,事情就这样结束了,没有真正的结论。
理论上我知道硬件中断是如何工作的,但是当网卡接收到信息包时它具体是如何工作的呢?硬件层面发生了什么?如何正确诊断是否发生了物理损坏,以避免本质上相当于扔零件解决问题?
理论上我知道硬件中断是如何工作的,但是当网卡接收到信息包时它具体是如何工作的呢?硬件层面发生了什么?
当NIC接收到信息时,它会检查是否满足触发硬件中断的条件。这通常是在 NIC 控制器上的固件中完成的。例如,如果接收中断已发送但尚未确认,则没有理由发送另一个中断。
如果 NIC 决定发送中断,则实际机制取决于 NIC 接口及其配置方式。旧的方法是实际更改专用中断线上的电压。这将进入中断控制器,该控制器通常会断言组合多个中断的其他线。然后操作系统会询问中断控制器触发了哪些中断。
较新的方法是“消息信号中断”(MSI),其中 NIC 基本上将特定字写入特定地址,并导致其他硬件(通常是总线控制器)生成中断。这允许设备拥有更多中断,并且还可以将中断定位到特定处理器。
如何正确诊断是否发生了物理损坏,以避免本质上相当于扔零件解决问题?
通常很难做到这一点,而且大多数人不太可能有足够的经验来诊断问题。硬件可能会以不同的方式发生故障,并且通常很难判断故障发生在链中的哪个位置。通常更有效的方法是更换最有可能发生故障的部件,看看问题是否消失,然后重复。如果有证据表明网卡硬件有问题,我会先尝试更换网卡。
归档时间: |
|
查看次数: |
4797 次 |
最近记录: |