TCP报文首部各参数简介
来源:互联网 发布:设置linux日志留存时间 编辑:程序博客网 时间:2024/06/04 18:47
本系列文章是博主学习TCP协议以来的个人笔记。博主不能保证本文所述内容绝对正确,所
以请读者抱着怀疑的态度阅读本博客内的文字。如果读者因本博客内的文字造成损失,本人
无力负责。如果有任何谬误或者问题,希望读者不吝赐教。
TCP报文段首部格式如下图所示:
常用的选项段包括:1.窗口扩大选项 2.时间戳选项 3.MMS选项等
需要注意的事:
1.序号是以字节为单位,因此最多可以表示2^32-1个字节,到达最大值以后从0开始
2.并不是每一个报文段都携带数据
3.TCP的源地址和目的地址包含在其外部的IP首部中,所以TCP首部
只有源端口和目的端口信息
4.校验和覆盖了整个TCP报文段,包括TCP首部和TCP数据
TCP的首部格式为其面向连接的可靠传输提供了保证。
1.地址/端口二元组确定了报文发往的主机(地址)及应用程序(端口)。
2.每一个报文段都有一个校验和,这可以保证被传输层接受的数据的正
确性。如果校验失败,则该报文段会被丢弃。接收端不进行确认,发送
端待重传定时器超时时进行重传
3.每个TCP报文段都有一个32位的序号,它标识本报文段的第一个字节。
为每一个字节编号可以解决报文因延时而乱序到达的问题,保证了被传
输层上传给应用程序的数据都有一个正确顺序。一般而言如果乱序的报
文段到达接收端,接收端会先缓存这个报文段,但是不会确认它。当它
编号之前的数据正确到达后,接受端才会确认这个乱序的报文段。
4.每个TCP报文段中都有一个确认号。确认序号包含发送确认的一端所
期望收到的下一个序号。因此确认序号是上一次已成功收到数据字节序
号加1.只有ACK标志为1时,确认序号字段才有效。
5.首部长度即TCP首部的长度,20-60字节不等。一般情况下长度是20字节
6.16字节窗口大小是为进行流量控制所设置的。如果不进行流量控制,一旦
发送端和接收端数据发送速率存在很大差异,那么很有可能一方的接受缓
冲已经被填满,而另一端毫无所知,仍在不停发送数据,显然这种情况下
会大量丢包,重传,进而造成网络拥塞。
- TCP报文首部各参数简介
- TCP报文首部格式
- TCP报文段首部详解
- IP报文首部结构、TCP报文首部结构
- TCP报文段的首部格式
- TCP报文段首部格式详解
- TCP学习(1)--报文段首部格式
- TCP报文段首部中“窗口”字段
- TCP报文段首部分析详解
- TCP报文段首部格式详解
- 深入TCP(一)--TCP报文段首部分析
- 【计算机网络】TCP报文首部中URG和PSH
- 【计算机网络】TCP报文首部中URG和PSH
- 【计算机网络】TCP报文首部中URG和PSH
- TCP报文首部中URG和PSH的作用
- TCP报文首部的URG和PSH字段
- 计算机网络--TCP报文首部URG与PSH的区别
- TCP报文首部URG和PSH的区别
- java实现标准正态分布
- 9个优秀的标签云免费生成工具
- Thunderbird技巧-回复邮件时内容在最前面
- c语言练习题Training1整数算法训练
- linux 从视频中提取音频
- TCP报文首部各参数简介
- HDU-1232(并查集)
- 逆向分析Lua语言特性的设计与实现(一):闭包
- 跨域的理解与实现
- linux笔记(1)
- IE无法解析XML文件的解决办法
- 左脑原创geoserver学习系列文章 (第一部分代码的检出)。
- Quercus-基于Java的PHP框架
- MFC控件使用总结——CListCtrl