技术笔记分享
目录
思维导图
!!!重点掌握
前情提要
1.TCP报文格式
字段详细说明:
2.UDP报文格式
字段详细说明:
3.IP子网划分
重要参数:
IPv4地址分类
特殊地址
子网划分概述:
1.TCP报文格式的几个重要参数
2.TCP与UDP的区别
3.IP报文的几个重要参数
TCP 是面向连接的、可靠的字节流协议。因此,在传输数据之前通信双方必须建立一个 TCP 连接。UDP是一种面向无连接的通信协议,因此不检查对端是否可以通信,直接将UDP包发送出去。TCP与此相反,它会在数据通信之前,通过TCP首部发送一个SYN包作为建立连接的请求等待确认应答。如果对端发来确认应答,则认为可以进行数据通信。如果对端的确认应答未能到达,就不会进行数据通信。
TCP通过以下方式提供可靠性:
1. TCP分段//与UDP不同,UDP数据长度保持不变
2. 超时重传//TCP报文段发出后启动定时器,目的端不及时发送确认信息,则重传
3. 确认应答//目的端收到报文段后,发送一个确认信息(不是立即发送)
4. 校验后出错,超时重发//目的端收到的校验和有差错,则丢弃,不发送确认信息,等待超时重发
5. 重新排序//TCP报文段通过IP数据报进行传输,到达目的端可能失序,需要进行重新排序,再向上层传递。
6. 重复丢弃//IP数据报有可能重复,TCP丢弃重复的数据
7. 流量控制//发送端和接收端速率可能不一致,所以TCP连接的每一方都有固定大小的缓存空间
字段详细说明:
- 源端口和目的端口: 各占16位,用于标识发送端和接收端的端口号,从而实现TCP的复用和分用功能。
- 序列号和确认号: 各占32位,用于保证TCP传输的有序性和可靠性。序列号标识发送的数据字节流中的每一个字节,确认号标识接收端期望收到的下一个数据字节的序号。
- 数据偏移/首部长度: 占4位,用于指示TCP报文段的首部长度,单位为32位字(4字节)。由于TCP报文段的首部可能包含可选字段,因此其长度是可变的,最大长度为60字节。
- 保留字段: 占6位,用于未来定义新的用途,目前通常置为0。
- 控制位: 占6位,包含多个标志位,用于控制TCP报文段的行为。常见的标志位包括FIN(表示发送方已经没有数据发送了,请求释放连接)、ACK(表示确认号有效)、SYN(表示这是一个连接请求或连接接受报文)、URG(表示紧急指针有效)等。
- 窗口: 占16位,用于指示接收端当前可用的缓存空间大小,从而控制发送端的发送速率,实现流量控制。
- 校验和: 占16位,用于对TCP报文段(包括首部和数据)进行校验,以检测数据传输过程中的错误。
- 紧急指针: 占16位,仅在URG标志位为1时有效,用于指示紧急数据的最后一个字节的序号。
- 选项字段: 长度可变,用于扩展TCP报文段的功能。常见的选项包括最大报文段长度(MSS)、时间戳等。
- 数据部分: 长度可变,用于携带TCP报文段中实际传输的数据。
使用抓包软件查看
字段详细说明:
- 源端口号(Source Port)
- 长度:16位(2字节)
- 作用:标识发送数据报的应用程序所在的端口。取值范围是0到65535。通常由操作系统分配,用于标识发送数据报的应用程序。
- 目的端口号(Destination Port)
- 长度:16位(2字节)
- 作用:标识接收数据报的应用程序所在的端口。取值范围也是0到65535。用于确定数据报应该交给哪个应用程序处理。
- 长度(Length)
- 长度:16位(2字节)
- 作用:表示整个UDP数据报的长度,包括UDP头部和数据部分。最小值是8,因为UDP头部的长度固定为8字节。
- 校验和(Checksum)
- 长度:16位(2字节)
- 作用:用于验证UDP报文在传输过程中是否发生了错误。通过UDP头部、数据部分以及伪首部进行计算。伪首部包括源IP地址、目的IP地址、协议号(17表示UDP)和UDP报文长度。
重要参数:
1.版本:目前IP协议版本号为4
2.服务类型:用于IP报标记,多用于Qos
3.生存时间TTL::IP报文所允许通过的路由器最大数量(默认64)
4.协议:指出IP报文携带的数据使用协议(TCP或UDP)
5.源IP地址:识别IP数据报的源端设备
6.目标IP地址:识别IP数据报的目的地址
IPv4地址分类
特殊地址
//单播:1对1
//组播:1(固定)对1组(变动)
//广播:1对所有
子网划分概述:
子网划分是指由网络管理员将一个给定的网络分为若干个更小的部分,这些更小的部分被称为子网。它涉及将网络地址空间划分为较小的块,每个块都分配给不同的子网。这一技术通过应用不同的子网掩码来实现,子网掩码是一个32位二进制数字,用于确定IP地址中网络部分和主机部分的边界。
*给一个IP地址能写出该地址的网络地址和广播地址 *
例如:192.168.10.50 255.255.255.224
步骤一:找出块大小
255-224=32//即块大小为32
步骤二:查找50在哪个范围
(1) 32*0:0~31
(2) 32*1:32~63(50在这个范围内)
(3) 32*2:64~ ...
所以192.168.10.50 255.255.255.224的网络地址为192.168.10.32广播地址为192.168.10.63
以上是本章的全部内容
不足之处请多包涵,大家可以在评论区多多讨论
到此这篇ipv6 tcp报文(ipv6的报文结构由什么组成?)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/cjjbc/52146.html