我要成为嵌入式高手之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