读书人

BSD 的IP构造体定义(IPv4)

发布时间: 2012-10-17 10:25:47 作者: rapoo

BSD 的IP结构体定义(IPv4)

/* *@(#)tcp.h8.1 (Berkeley) 6/10/93 */typedefu_longtcp_seq;/* * TCP header. * Per RFC 793, September, 1981. */struct tcphdr {u_shortth_sport;/* source port */u_shortth_dport;/* destination port */tcp_seqth_seq;/* sequence number */tcp_seqth_ack;/* acknowledgement number */#if BYTE_ORDER == LITTLE_ENDIAN u_charth_x2:4,/* (unused) */th_off:4;/* data offset */#endif#if BYTE_ORDER == BIG_ENDIAN u_charth_off:4,/* data offset */th_x2:4;/* (unused) */#endifu_charth_flags;#defineTH_FIN0x01#defineTH_SYN0x02#defineTH_RST0x04#defineTH_PUSH0x08#defineTH_ACK0x10#defineTH_URG0x20u_shortth_win;/* window */u_shortth_sum;/* checksum */u_shortth_urp;/* urgent pointer */};#defineTCPOPT_EOL0#defineTCPOPT_NOP1#defineTCPOPT_MAXSEG2#define    TCPOLEN_MAXSEG4#define TCPOPT_WINDOW3#define    TCPOLEN_WINDOW3#define TCPOPT_SACK_PERMITTED4/* Experimental */#define    TCPOLEN_SACK_PERMITTED2#define TCPOPT_SACK5/* Experimental */#define TCPOPT_TIMESTAMP8#define    TCPOLEN_TIMESTAMP10#define    TCPOLEN_TSTAMP_APPA(TCPOLEN_TIMESTAMP+2) /* appendix A */#define TCPOPT_TSTAMP_HDR\    (TCPOPT_NOP<<24|TCPOPT_NOP<<16|TCPOPT_TIMESTAMP<<8|TCPOLEN_TIMESTAMP)/* * Default maximum segment size for TCP. * With an IP MSS of 576, this is 536, * but 512 is probably more convenient. * This should be defined as MIN(512, IP_MSS - sizeof (struct tcpiphdr)). */#defineTCP_MSS512#defineTCP_MAXWIN65535/* largest value for (unscaled) window */#define TCP_MAX_WINSHIFT14/* maximum window shift *//* * User-settable options (used with setsockopt). */#defineTCP_NODELAY0x01/* don't delay send to coalesce packets */#defineTCP_MAXSEG0x02/* set maximum segment size */

读书人网 >行业软件

热点推荐