TCP/IP头

IP头格式: 

    版本号 (4位) 
    IP头长度 (4位) 
    服务类型 (8位) 
    数据包长度 (16位) 
    标识段 (16位) 
    标志段 (16位) 
    生存时间 (8位) 
    传输协议 (8位) 
    头校验和 (16位) 
    发送地址 (16位) 
    目标地址 (16位) 
    选项 
    填充 
    简单说明 
    ============ 
    1. IP头长度计算所用单位为32位字, 常用来计算数据开始偏移量 
    2. 数据包长度用字节表示, 包括头的长度, 因此最大长度为65535字节 
    3. 生存时间表示数据被丢失前保存在网络上的时间, 以秒计. 
    4. 头校验和的算法为取所有16位字的16位和的补码. 
    5. 选项长度是可变的, 填充区域随选项长度变化, 用于确保长度为整字节的倍数. 
    描述 
    ============ 
    struct iphdr { 
    BYTE versionihl; 
    BYTE tos; 
    WORD tot_len; 
    WORD id; 
    WORD frag_off; 
    BYTE ttl; 
    BYTE protocol; 
    WORD check; 
    DWORD saddr; 
    DWORD daddr; 
    /* Put options here. */ 
    }; 




二、TCP头格式 
    TCP头格式: 
    源端口 (16位) 
    目的端口 (16位) 
    序号 (32位) 
    确认号 (32位) 
    数据偏移 (4位) 
    保留 (6位) 
    标志 (6位) 
    窗口 (16位) 
    校验和 (16位) 
    紧急指针 (16位) 
    选项 
    填充 
    简单说明 
    ============ 
    1. 数据偏移用于标识数据段的开始 
    2. 保留段6位必须为0 
    3. 标志包括紧急标志、确认标志、入栈标志、重置标志、同步标志等。 
    4. 校验和计算方式为将头与16位二进制反码和中的16位二进制反码加在一起。 
    5. 选项长度是可变的, 填充区域随选项长度变化, 用于确保长度为整字节的倍数. 
    6. 更详细的说明请参阅有关资料。 
    描述 
    ============ 
    struct tcphdr { 
    WORD SourPort; 
    WORD DestPort; 
    DWORD SeqNo; 
    DWORD AckNo; 
    BYTE HLen; 
    BYTE Flag; 
    WORD Window; 
    WORD ChkSum; 
    WORD UrgPtr; 
    /* Put options here. */ 
    }; 




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值