在我的verilog写的UDP协议栈中实现udp的check sum的生成,因为要便利所有udp报文生成后加在udp的头部,所以要设置一个RAM进行此UDP包的缓存,这样消耗更多硬件资源并且加大了延迟,可以说这是唯一部分使用到了ram块的操作,其他的实现比如ip和mac以及ether都是zero copy。
默认的wireshark对udp的check sum是不检查的,这让我很觉得出力不讨好。我搜索了一下,原来wireshark也可以校验udp的check sum,需要做如下设置才检查。
另外上图中IP层显示的是红色的,点开一下是IP的CHECK SUM 错误,要继续研究一下。