MacOS `ifconfig` 中的“未对齐的 pkts”是什么

MacOS `ifconfig` 中的“未对齐的 pkts”是什么

当我尝试使用 Mac Studio 跟踪一些网络问题时,我遇到了一个无法理解的奇怪指标——“未对齐的 pkts”,它似乎以 ~20/s 的速度增加。

> ifconfig -v en0 
en0: flags=8963<UP,BROADCAST,SMART,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500 index 23
    eflags=410009c0<ACCEPT_RTADV,TXSTART,RXPOLL,ARPLL,ECN_ENABLE,FASTLN_ON>
    xflags=1<WOL>
    options=567<RXCSUM,TXCSUM,VLAN_MTU,TSO4,TSO6,AV,CHANNEL_IO>
    hwassist=720067<CSUM_IP,CSUM_TCP,CSUM_UDP,CSUM_TCPIPV6,CSUM_UDPIPV6,VLAN_MTU,MULTIPAGES,TSO_V4,TSO_V6>
    ether xx:xx:xx:xx:xx:xx
    inet6 xxxx::xxx:xxxx:xxxx:xxxx%en0 prefixlen 64 secured scopeid 0x17 
    inet 192.168.xxx.xxx netmask 0xffffff00 broadcast 192.168.xxx.xxx
    netif: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    flowswitch: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
    nd6 options=201<PERFORMNUD,DAD>
    media: autoselect (10Gbase-T <full-duplex,flow-control,energy-efficient-ethernet>)
    status: active
    generation id: 23
    type: Ethernet
    agent domain:Skywalk type:NetIf flags:0xa443 desc:"Userspace Networking"
    link quality: 100 (good)
    state availability: 0 (true)
    scheduler: FQ_CODEL 
    link rate: 10.00 Gbps

    unaligned pkts: 43549194
    ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^ ^

    qosmarking enabled: yes mode: none
    low power mode: disabled
    multi layer packet logging (mpklog): disabled
    routermode4: disabled
    routermode6: disabled

我在 Google 上找不到任何东西——什么是未对齐的包,以这种速率拥有它们可以吗?

答案1

据我所知,这是发送网络包时的错误,其中消息头未在 4 字节(32 位)边界上对齐。当消息嵌入其他协议时,可能会出现此错误。

虽然这不是标准的一部分,但针对这些情况,网络消息处理程序中引入了软件补丁,以便正确处理此类数据包(在标准之外)。

换句话说,虽然已经发出了该问题的信号,但是如果网络上没有频繁出现硬错误,则网络软件可以正确处理该问题,因此无需担心。

我找到该信息的来源是
错位、MIPS 和 ip_hdr(skb)->version

相关内容