TCPIP常用协议头格式
来源:互联网 发布:淘宝店怎么找上家 编辑:程序博客网 时间:2024/06/06 01:51
李国帅于2008.6编辑
包含TCP,UDP,IP,IPv6,Ethernet frame,FDDI 802等常见帧结构
TCP Header Format
/*RFC-793*/typedefstruct _tcphdr{unsigned short source; //原端口地址unsigned short dest; //目的端口地址unsigned long seq; //序号unsigned long ack_seq; //确认号unsigned short doff:4; //首部长度unsigned short resl:4; //保留unsigned short cwr:1; //控制unsigned short ece:1;unsigned short urg:1;unsigned short ack:1;unsigned short psh:1;unsigned short rst:1;unsigned short syn:1;unsigned short fin:1;unsigned short window;unsigned short check;unsigned short urg_ptr;}tcphdr;
IP Header Format
/*RFC-791*/typedefstruct _iphdr{unsigned char version:4; //版本unsigned char ihl:4; //首部长度unsigned char tos; //服务类型unsigned short tot_len; //总长度unsigned short id; //标志unsigned short frag_off; //分片偏移unsigned char ttl; //生存时间unsigned char protocol; //协议unsigned char check; //检验和unsigned long saddr; //源IP地址unsigned long daaddr; //目的IP地址}iphdr;
UDP Header Format
/*RFC-768--*/typedefstruct _udphdr{unsigned short source;unsigned short dest;unsigned short len;unsigned short check;}udphdr;
ICMP Header Format
/*RFC-792--*/typedefstruct _icmphdr{unsigned char type; //类型unsigned char code; //代码unsigned short checksum; //校验和union {struct {unsigned short id; //标识符unsigned short sequence; //序号} echo;unsigned long gateway; //目标路由器的IP地址struct {unsigned short unused; //unsigned short mtu;} frag;} un;} icmphdr;
IGMP Header Format
/*RFC-988--*/typedefstruct _igmphdr{unsigned char type;unsigned char code; /* For newer IGMP */unsigned short csum;unsigned long group;} igmphdr;
IPv6 Header Format
/*RFC-1365--*/typedefstruct _ipv6hdr{unsigned char version:4;unsigned char priority:4;unsigned char flow_lbl[3];unsigned short payload_len;unsigned char nexthdr;unsigned char hop_limit;struct in6_addr saddr;struct in6_addr daddr;} ipv6hdr;
Ethernet frame header
/** This is an Ethernet frame header.*/typedefstruct _ethhdr{unsigned char h_dest[ETH_ALEN]; // destination eth addrunsigned char h_source[ETH_ALEN]; // source ether addrunsigned short h_proto; // packet type ID field} ethhdr;
FDDI 802.2
/* Define 802.2 Type 1 header */struct fddi_8022_1_hdr{__u8 dsap; /* destination service access point */__u8 ssap; /* source service access point */__u8 ctrl; /* control byte #1 */} __attribute__ ((packed));/* Define 802.2 Type 2 header */struct fddi_8022_2_hdr{__u8 dsap; /* destination service access point */__u8 ssap; /* source service access point */__u8 ctrl_1; /* control byte #1 */__u8 ctrl_2; /* control byte #2 */} __attribute__ ((packed));/* Define 802.2 SNAP header */#define FDDI_K_OUI_LEN 3struct fddi_snap_hdr{__u8 dsap; /* always 0xAA */__u8 ssap; /* always 0xAA */__u8 ctrl; /* always 0x03 */__u8 oui[FDDI_K_OUI_LEN]; /* organizational universal id */__u16 ethertype; /* packet type ID field */} __attribute__ ((packed));/* Define FDDI LLC frame header */struct fddihdr{__u8 fc; /* frame control */__u8 daddr[FDDI_K_ALEN]; /* destination address */__u8 saddr[FDDI_K_ALEN]; /* source address */union{struct fddi_8022_1_hdr llc_8022_1;struct fddi_8022_2_hdr llc_8022_2;struct fddi_snap_hdr llc_snap;} hdr;} __attribute__ ((packed));
阅读全文
0 0
- TCPIP常用协议头格式
- TCPIP协议头定义
- TCPIP协议
- IP协议头格式
- IP协议头格式
- IP协议头格式分析
- tcpip协议 之三
- TCPIP传送协议
- TCPIP协议图
- TCPIP协议图
- java-TCPIP协议学习
- tcpip握手协议
- 深入学习TCPIP协议
- TCPIP 几种开源协议栈
- 《TCPIP》---ARP协议总结
- TCPIP协议概览
- TCPIP协议族体系结构
- TCPIP协议分层
- 数据库小结(面试)
- 唯快不破:UNIX网络编程--TCP网络编程中的listen
- C语言实现Base64编码/解码
- 数据结构实验之排序三:bucket sort
- 列出一个文件夹下的所有文件名(全路径)
- TCPIP常用协议头格式
- Sqoop 连接Oracle导入数据到hive
- 收藏的有价值的文章,感谢作者的分享!
- c语言数据结构的练习
- C++Primer习题第十五章
- 深入Java虚拟机-类加载机制
- 剑指offer---打印1到n位的最大数(12)
- 基于fpga的串口通信实现
- 写Flask应用时的一些优雅技巧