1.2 TCP首部格式

本文详细介绍了TCP协议首部的格式,包括目的端口号、序列号、确认号、控制比特、窗口大小、检验和等字段,并讨论了Linux内核中对应的结构体tcphdr。此外,还提到了TCP首部的选项字段及其作用,如最大报文段、时间戳等。最后,简述了TCP协议的历史和稳定性,以及在socket API中的应用。
摘要由CSDN通过智能技术生成

  TCP是一个通信协议,所谓协议就是通信各方约定好的通信规则。大家必须全部严格遵守这些规则,通信才能顺利完成。TCP的通信规则由一系列RFC来规范。首先是首部格式。

在Linux中对应的结构体为:

 include/uapi/linux/tcp.h
 24 struct tcphdr {
 25     __be16  source;
 26     __be16  dest;
 27     __be32  seq;
 28     __be32  ack_seq;      
 29 #if defined(__LITTLE_ENDIAN_BITFIELD)
 30     __u16   res1:4,
 31         doff:4,
 32         fin:1,
 33         syn:1,
 34         rst:1,
 35         psh:1,
 36         ack:1,
 37         urg:1,
 38         ece:1,
 39         cwr:1;
 40 #elif defined(__BIG_ENDIAN_BITFIELD)
 41     __u16   doff:4,
 42         res1:4,
 43         cwr:1,
 44         ece:1,
 45         urg:1,
 46         ack:1,
 47         psh:1,
 48         rst:1,
 49         syn:1,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值