FPGA学习笔记_FPGA实现千兆以太网_网络层(IP协议)
FPGA学习笔记
1. FPGA实现千兆以太网_网络层(IP协议)
网络层(IP协议)
IP协议是TCP/IP协议中最核心的协议,所有的TCP,UDP,ICMP,IGMP数据都是以IP数据报的格式传输的。如果发生错误,IP会丢失该数据,然后发送ICMP信息给信源端。IP数据报可以不按发送顺序接收。
- IP数据报格式
- IP数据报首部
- 报头检验和的计算方法
- 将校验和字段置0
- 将IP包头按16bit分成多个单元,如果长度不是16bit的倍数,则用0比特填充到16比特的倍数
- 对各个单元采用反码加法运算(即高位溢出位会加到低位,通常的补码运算时直接丢掉一处的高位),将得到的和的反码填入校验和字段
- 例子:
- 校验和 = 0x0000
- 0x4500+0x0032+0x0000+0x0000+0x4011+0xf965+0xc0a8+0x0002+0xc0a8+0x0003=0x2698
- 0x0002+0x0698=0x069a
按位取反:报头检验和=~0x069a=0xf965
---- 内容源自对小梅哥FPGA自学笔记的总结^^
【注】:个人学习笔记,如有错误,望不吝赐教,这厢有礼了~~~