我是靠谱客的博主 动听战斗机,最近开发中收集的这篇文章主要介绍封装包头基本信息-TCP/UDP头-IP包头-帧头一、数据传输过程二、TCP/UDP头三、IP包头四、帧结构,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

一、数据传输过程

二、TCP/UDP头

1、TCP

2、UDP

三、IP包头

四、帧结构


一、数据传输过程

二、TCP/UDP头

1、TCP

提供面向连接的、可靠的数据通信服务

提供可靠性服务

数据包分块、发送接收确认、超时重发、数据校验、数据包排序、控制流量

标志位一共有6种,分别是:

SYN(synchronous): 发送/同步标志,用来建立连接,和下面的第二个标志位ACK搭配使用。连接开始时,SYN=1,ACK=0,代表连接开始但是未获得响应。当连接被响应的时候,标志位会发生变化,其中ACK会置为1,代表确认收到连接请求,此时的标志位变成了 SYN=1,ACK=1。

ACK(acknowledgement):确认标志,表示确认收到请求。

PSH(push) :表示推送操作,就是指数据包到达接收端以后,不对其进行队列处理,而是尽可能的将数据交给应用程序处理;

FIN(finish):结束标志,用于结束一个TCP会话;

RST(reset):重置复位标志,用于复位对应的TCP连接。

URG(urgent):紧急标志,用于保证TCP连接不被中断,并且督促中间层设备尽快处理。

此外,还有两个序号:

Sequence number :顺序号,发送数据包中的第一个字节的序列号,一般为小写的seq。

Acknowledge number:确认号,响应前面的seq,值为seq+1,可以理解为期望下次发出的序列号为seq+1;
 

2、UDP

 提供面向事务的简单不可靠信息传送服务

特点:

无连接、不可靠

协议简单、占用资源少,效率高

 

三、IP包头

版本(4)

部首长度(4)

优先级与服务类型(8)

总长度(16)

标识符(16)

标志(3)

段偏移量(13)

TTL(8)

协议号(8)

首部校验和(16)

源地址(32)

目的地址(32)

可选项

数据

版本:0100(IPv4)、0110(IPv6)

部首长度:IP包头的长度,声明有没有用到可选项。

优先级与服务类型:前三个优先级 中间四个服务类型 最后一个保留字节。

总长度:整个IP包的长度。

标识符:用来标识IP包

标志:第一位保留位(未启用)第二位(1代表未分片0代表分片)第三位(1表示不是最后一个分片0代表是最后一个分片)

段偏移量:1480的倍数

TTL:生存时间(0~255)经过一个路由器TTL值减一

协议号:识别上层协议TCP(6)UDP(17)ICMP(1)

首部校验和:校验IP包头20~60

源地址:源IP地址

目的地址:目的IP地址

可选项:0-40字节

四、帧结构

源MAC  目标MAC 数据类型上三层数据帧尾

 

帧头:14字节

源MAC:6字节

目标MAC:6字节

类型:2字节 识别上层协议,为上层提供服务。0x0800 IP协议、0x0806 ARP协议

帧尾:4字节 校验前面的值

MAC地址:也叫物理地址,是全球唯一。长度:48位、6字节

上三层数据:MTU(最大传输单元)

各个国家的MTU值不一样,我国的MTU值为1500字节

最长的帧1518字节。

最后

以上就是动听战斗机为你收集整理的封装包头基本信息-TCP/UDP头-IP包头-帧头一、数据传输过程二、TCP/UDP头三、IP包头四、帧结构的全部内容,希望文章能够帮你解决封装包头基本信息-TCP/UDP头-IP包头-帧头一、数据传输过程二、TCP/UDP头三、IP包头四、帧结构所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(83)

评论列表共有 0 条评论

立即
投稿
返回
顶部