首部用一个结构体描述,如下: PACK_STRUCT_BEGINstructicmp_echo_hdr{PACK_STRUCT_FIELD(u8_ttype);//标识该ICMP报文的具体类型PACK_STRUCT_FIELD(u8_tcode);//进一步指出产生这种类型的ICMP的原因PACK_STRUCT_FIELD(u16_tchksum);//校验PACK_STRUCT_FIELD(u16_tid); PACK_STRUCT_FIELD(u16_tseqno); } PACK...
———udp.h———#defineUDP_HLEN 8//定义 UDP 数据报首部长度PACK_STRUCT_BEGINstructudp_hdr { PACK_STRUCT_FIELD(u16_t src);//源端口号PACK_STRUCT_FIELD(u16_t dest);//目的端口号PACK_STRUCT_FIELD(u16_t len);//总长度PACK_STRUCT_FIELD(u16_t chksum);//校验和} PACK_STRUCT_STRUC...
PACK_STRUCT_FIELD(u16_t src); PACK_STRUCT_FIELD(u16_t dest); PACK_STRUCT_FIELD(u32_t seqno); PACK_STRUCT_FIELD(u32_t ackno); PACK_STRUCT_FIELD(u16_t _hdrlen_rsvd_flags); PACK_STRUCT_FIELD(u16_t wnd); PACK_STRUCT_FIELD(u16_t chksum); PACK_STRUCT_FIELD(u16_t urgp); } PACK...
Cloud Studio代码运行 #defineUDP_HLEN8PACK_STRUCT_BEGINstruct udp_hdr{PACK_STRUCT_FIELD(u16_t src);PACK_STRUCT_FIELD(u16_t dest);/* src/dest UDP ports */PACK_STRUCT_FIELD(u16_t len);PACK_STRUCT_FIELD(u16_t chksum);}PACK_STRUCT_STRUCT;PACK_STRUCT_END 这个结构体很简洁,使用结构体封装宏...
} PACK_STRUCT_STRUCT; PACK_STRUCT_END 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 这个结构体很简洁,使用结构体封装宏定义的每个字段,还应该注意的是四个字段保存的值应该与网络字段保持一致。 udp 控制块 控制块是整个 UDP 中最为核心的东西,用户使用 UDP 进行编程,以及对于 UDP 报文的处理,本质上都是对...
} PACK_STRUCT_STRUCT; 3.3输入数据流 关键代码是icmp_input ethernet_input->Type=0x0800 ip4_input-> Protocol=0x01 icmp_input 通过switch处理各种类型 switch(type) {caseICMP_ER: 比如对于收到别人的ping请求就是进入 case ICMP_ECHO: 如果是多播地址不响应 ...
defined (__CC_ARM) #define LWIP_TIMEVAL_PRIVATE 0 //#include <sys/time.h> #endif /* define compiler specific symbols */ #if defined (__ICCARM__) #define PACK_STRUCT_BEGIN #define PACK_STRUCT_STRUCT #define PACK_STRUCT_END #define PACK_STRUCT_FIELD(x) x #define PACK_STRUCT_USE_...
PACK_STRUCT_xxx都是与编译器字对齐相关的宏定义 htons(ethhdr->type)函数的使用,htons函数的功能是将一个半字长的数据从网络字节顺序转换到我们的处理器支持的字节顺序 任何网络的通信都是基于底层硬件链路的,底层的数据链路有着自己的一套寻址机制,在以太网中,往往是通过一个48位的MAC地址来标示不同的网络通信设...
PACK_STRUCT_xxx都是与编译器字对齐相关的宏定义 htons(ethhdr->type)函数的使用,htons函数的功能是将一个 半字长的数据从网络字节顺序转换到我们的处理器支持的字节顺序 任何网络的通信都是基于底层硬件链路的,底层的数据链路有着自己的一套寻址机制,在以太网中,往往是通过一个48位的MAC地址来标示不同的网络通信...