TCP IP报文讲解

更新时间:2023-10-24 17:37:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

TCP/IP协议 学习理解:

一个完整的数据帧:

利用抓包工具,我们可以从网络中随便抓取一个包,比如抓个ICMP包。其结构如下:

— Frame 3076下是该数据帧里的一些相关信息:

数据帧到达时间 /捕捉到数据帧的时间

—? —?

从抓到第一个包到现在计时

帧序列号: /抓包工具抓到的第几个包 帧长度: /该包自己标记的长度 捕捉到的帧长度: /实际捕捉到的包长 [帧是否被标记]: /?

[帧里包含的协议:eth:ip:icmp:data] /包内自上往下封装的协议 下面是数据帧里的结构:

— 以太网 /协议

目的主机硬件地址: /48bit 被发送端主机硬件地址 MAC 源主机硬件地址: /48bit 发送端主机硬件地址 MAC

包类型: /16bit (0x0800) 所封装包的类型,只识别最外一层IP协议 — IP /协议

版本: /版本号为4,也称作IPv4

首部长度: /首部占32bit数目,字段长4比特,所以其最长为:32/8*15(2进制的1111)=60字节 — 服务类型: /8位 优先权子字段 : /3bit优先权子字段

TOS子字段 : /4bit TOS子字段,分别代表:最小时延、最大吞吐量、最高可靠性和最小费用,这里全0表一般服务 未用位: /1bit未用位(必须置0)

总长:16位 /指整个IP数据报的长度,由于该字段长16比特,所以IP数据包最长可达65535字节 标识:16位 /唯一标识主机发送的每一份数据报,通常每发送一份报文它的值就会加1 标志:3位 / 片偏移:13位 /

生存时间:8位 /设置数据报可以经过的最多路由器

内封装协议类型: /8bit (这里是ICMP ,0x01) 所封装的协议

头部检验和:true or false 16位 /根据首部计算的检验和码,结果全1为true,否则false 源IP地址: /发送端主机IP地址 目的IP地址:32位 /接收端主机IP地址 — ICMP /协议 类型:8位

代码:8位 /类型和代码决定其报文的类型 如8和0表示请求报文,0和0 表示回应报文 检验和:16位 /作用和算法同IP检验和 标识符:16位

序列号:16位 /标识符和序列号由发送端任意选择决定,这些值在应答中将被返回,发送端就可以将应答和请求进行匹配。 数据:范围 0至1472 /发送报文的主要内容 下面背景加黑的部分表示相应的值。

这是一个完整的ICMP数据包,由内到外封装顺序为: ICMP→IP→ETH 当接收端主机收到一个报文后,分用过程则和封装相反:ETH→IP→ICMP

ARP报文:

本文来源:https://www.bwwdw.com/article/s092.html

Top