6.5TCP报文段的首部格式

在这里插入图片描述
有固定20个字节,还有可变部分。
大部分数据包TCP首部就20个字节,有一些比较特殊的数据包需要加上可变部分。
用来协商一些内容。
在这里插入图片描述
源端口和目标端口各占2字节。
序号:四个字节,当文件被分段后,用来表示分段的数据包中的文件的第一个字节是在整个文件的第几个字节。
在这里插入图片描述
确认号:占四个字节,用来指定下一个接受的数据包的序号。
当接收方接受了第一个数据包,一共到4,接下来需要5开头的数据包,就给发送方发送一个确认数据包,确认收到了四个字节,然后让它继续发第五个。
告诉发送方该发第多少个个字节,发送方根据接受的确认包的确认号来找到相应的序号相同的数据包发送。同时将确认收到的数据从缓存中释放。
在这里插入图片描述
数据偏移:可能首部会有变长部分,所以需要来确定哪里是数据开始,占一个字节,说明首部是多长,首部后都是数据部分。
一个1代表4个字节,首部最长是60个字节。
选项部分最多也就40个字节。
保留:6位二进制,没有用。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

首先是两个ARP包来确认下一跳的mac地址,也就是第一个路由器的MAC地址,之后有DNS解析域名得到IP地址,传送网站数据用TCP协议,首先与网站建立会话,
建立会话的数据包都是SYN的,
MSS是指最大接受的数据包大小1460个字节,
Win是指窗口大小,就是缓存最多能接受多少个字节。如果发送方发送了64240个字节后接收方没有确认,发送方就停止,等接收方处理完再继续发送。
在这里插入图片描述
实际上序号就是我该发第几个字节,确认号就是我要你发第几个字节。
在这里插入图片描述
URG标记位,带有这个标记位的数据包优先发送不需要排队。
在这里插入图片描述
ACK:为0确认号无效,为1确认号有效。
SYN:同步时用到,当客户端与web站点建立会话时,SYN是1,说明这是一个请求建立会话的数据包,web站点同意,SYN也是1,还没有接受数据,所以ACK为0,
客户端发送的数据包序号为0,确认号也是0,实际是没有,web站点表示收到了这个数据包,因此确认号为1,序号为0,ACK为1,保证确认号有效。
看到SYN就是在建立会话的数据包。
在这里插入图片描述
第三个数据包没有SYN,因为会话已经建立了。

可以利用这个建立会话的数据包攻击电脑使电脑被占用大量资源,频繁用不存在的IP与电脑建立会话,电脑的资源全部用在处理数据包上了,可能造成电脑瘫痪。
还有Land工具,让计算机频繁的自己和自己建立会话,最终导致资源耗尽。
PSH:接收方按顺序接受数据包,它为1,使接受方优先接受此数据包。
RST:为1,说明TCP会话出现严重错误,必须释放连接,异常中断,只有重新建立连接才能重新通信。
当网页加载一半,点击停止,后面没发完的数据包RST都为1,释放连接。
FIN:当网页数据传输完毕,正常结束释放连接时,FIN为1.

窗口:占两个字节,在建立会话时告诉对方自己的接受缓存最大是多少。

在这里插入图片描述
告诉对方自己的接受缓存,并将自己的发送缓存设置成对方接受缓存一样。
检验和:检验首部和数据两部分,检验时加上伪首部。
紧急指针:在URG为1时有效,假如紧急指针为50,就代表数据包从1-50个字节是需要优先处理的。
可变部分:可以规定最大数据报,是不是支持选择性确认。
在这里插入图片描述
options就是选项,
maximum seqment size就是最大数据报长度,
sack就是支持选择性确认,为permitted是允许的。
选项不够4个字节用0填充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值