给WIRESHARK开启了校验之后发现电脑发出的UDP包其中IP包部分校验和和UDP部分校验和都是错的。如图:
图中FPGA板子的IP地址是192.168.3.22电脑的IP是192.168.3.11. 我们看到FPGA 板子发出的UDP包中IP和UDP的CHECK SUM都通过了校验,而电脑发出的UDP包是黑色的,没用通过UDP校验。对我们实际指导意义是咱们FPGA的接受部分要有忽略CHECK SUM的开关,以兼容这些check sum不好好算的网络节点。
我觉得可能电脑上有某个设置,可以让这网卡带有正确的校验和。实际使用还是用上比较好,我们用的UDP本身就是无连接的,虽然在用户数据层面会做校验以及丢包检测,但是这里有在网络底层里面有个检验错误总能让使用起来跟踏实。我用FPGA不到几百个逻辑单元(Logic Element)就实现了,对网卡来说应该i是可定支持的吧,我觉得。