gpt4 book ai didi

linux - 以太网校验和是否通过 AF_PACKET 公开?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:39:47 25 4
gpt4 key购买 nike

正如 this question 所暗示的那样,似乎校验和是由以太网硬件计算和验证的,因此当使用 AF_PACKET 套接字发送帧时,它似乎不太可能必须由软件生成,看起来 herehere .另外,我不认为它可以从套接字接收,也不能通过任何简单的方式接收,因为即使 Wireshark 也不显示它。

所以,有人可以证实这一点吗?我真的需要像最后两个链接所示自己发送校验和吗?以太网适配器会自动创建和检查校验和吗?

最佳答案

不,您不需要包含 CRC。

在 Linux 中使用 socket(AF_PACKET, SOCK_RAW, htons(ETH_P_ALL) ) 来使用数据包套接字时,您必须在发送时提供第 2 层 header 。这由 netinet/if_ether.h 中的 struct ether_header 定义,包括目标主机、源主机和类型。不包括帧校验序列,也不包括前导码、帧定界符开始或尾部。这些是由硬件添加的。

关于linux - 以太网校验和是否通过 AF_PACKET 公开?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15651651/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com