概述
目录
一、数据传输过程
二、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包头四、帧结构所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复