TCP包头、TCP为什么安全可靠、UDP和TCP的区别、http协议

我要成为嵌入式高手之3月8日Linux高编第十八天!!


学习笔记

TPC包头

1、序号

发送端发送数据包的编号

2、确认号

已经确认接收到的数据的编号,只有当ACK为1时,该位才有用

3、首部长度

数据前面的称之为头部

6位标记位 每一个标记位占一位

URG紧急标记位

ACK确认标记位

PSH若置为1这一数据段不在缓存区里等待,直接优先处理

RST断开连接标记位

SYN请求标记位 置一建立连接的过程

FIN结束标记位 置一释放连接的过程

4、校验和

目的是保证数据完整性

TCP为什么安全可靠

1、在通信之前建立三次握手连接

SYN(字段)

SYN+ACK

ACK

2、在通信过程中,通过序列号和确认号保障数据传输的完整性

序列号和确认号的规律:

本次发送的序列号 == 对方上次接收到的确认号

本次发送确认号 == 上次接收到的序列号 + 实际接收的长度

在传输过程中使用滑动窗口实现流量控制

3、在通信结束后使用四次挥手结束连接保障数据传输的完整性

UDP和TCP的区别

1、UDP和TCP都是传输层的协议

2、UDP实现机制简单、资源开销小、不安全不可靠

3、TCP实现机制复杂、资源开销大、安全可靠

4、UDP是无连接的、TCP是有连接的、UDP是以数据包形式传输、TCP是以流的方式传输

http协议

1、URL

<协议>://<主机>:<端口>/<路径>

协议:HTTP 80端口 TCP

HTTPS 443端口 TCP

主机:域名 -> 域名解析服务器 -> IP地址

端口:可以省略,有默认端口

路径:相要获取的对应的资源

2、HTTP交互过程:

1、建立TCP链接

2、发送HTTP请求报文

3、回复HTTP响应报文

4、断开TCP链接

API网站IP

103.205.5.249:80

JOSN解析

JOSN语法

JSON 语法是 JavaScript 对象表示语法的子集。

  • 数据在名称/值对中
  • 数据由逗号 , 分隔
  • 使用斜杆 \ 来转义字符
  • 大括号 {} 保存对象
  • 中括号 [] 保存数组,数组可以包含多个对象
相关推荐
Trouvaille ~7 小时前
【Linux】网络编程基础(二):数据封装与网络传输流程
linux·运维·服务器·网络·c++·tcp/ip·通信
Arvin6279 小时前
研发环境:SSL证书快速部署
网络·网络协议·ssl
酣大智9 小时前
DHCP中继配置实验
运维·网络·网络协议·tcp/ip·华为
丁劲犇10 小时前
CentOS 7.6 TCP连接奇慢故障排查:中文注释引发的sysctl配置异常
linux·tcp/ip·centos·速度慢
玉梅小洋12 小时前
Linux命令详解 —— IP 命令及永久配置
linux·运维·tcp/ip
huohaiyu12 小时前
IP协议详解
服务器·网络·tcp/ip
LaoZhangGong12313 小时前
学习TCP/IP的第9步:客户端和服务端综合测试
网络·学习·tcp/ip
aesthetician14 小时前
WebSocket: 实时通信的脉动:深度解析与 TypeScript 实践
websocket·网络协议·typescript
云小逸15 小时前
【网络通信】TCP核心原理深度解析:三次握手/四次挥手为基,拥塞控制与慢启动核心精讲
网络·网络协议·tcp/ip
深蓝电商API16 小时前
httpx 异步客户端处理 WebSocket 数据
websocket·网络协议·httpx