ICMP的分析和VERILOG实现

66 篇文章 23 订阅
28 篇文章 11 订阅
本文档介绍了ICMP报文结构,主要用于理解如何响应PING命令。ICMP首部包括类型、代码、校验和、识别号和序列号等字段,其中识别号通常使用进程号,序列号则用于标记回显请求报文的顺序。时间戳字段有助于跟踪响应的时间差异。
摘要由CSDN通过智能技术生成

参考文档:IP报文及ICMP报文结构原理 - xss - 博客园

这里实现ICMP主要是为了响应PING命令。并不会主动发出PING命令。

//定义ICMP首部
typedef struct _icmphdr{
unsigned char i_type; //8位类型
unsigned char i_code; //8位代码
unsigned short i_cksum; //16位校验和, 从TYPE开始,直到最后一位用户数据,如果为字节数为奇数则补充一位
unsigned short i_id ; //识别号(一般用进程号作为识别号), 用于匹配ECHO和ECHO REPLY包
unsigned short i_seq ; //报文序列号, 用于标记ECHO报文顺序
unsigned int timestamp; //时间戳
}ICMP_HEADER;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值