Python 进阶篇-系列文章全篇
???? Linux操作系统与常用命令 ???? Linux系统性能定时监控升级,源码可复制
???? tcp网络程序的实现步骤,看这个就够了
???? http请求与响应,tcp3次握手&四次挥手
???? 模拟浏览器实现,服务端基础框架搭建
???? Python进阶:利用线程实现多任务
???? Python进阶:进程的状态及基本操作
???? Python进阶:一文搞懂迭代器、生成器、协程(附案例)
???? 数据库:了解MySQL数据类型、SQL命令
???? 从零开始学SQL:where条件查询与连接
???? Python网络开发基础,实现udp聊天器小案例
???? 多任务版TCP服务端程序开发案例+源码
???? 【图文教程详解】Ubuntu的两种安装方式
???? Python中的深拷贝与浅拷贝
文章目录
- Python 进阶篇-系列文章全篇
- 1. tcp的3次握手
- 2. tcp的4次挥手
- 3. IP地址和域名
- 4. DNS及浏览器请求服务器的过程
- 5. HTTP协议概述
- 6. [重点]HTTP协议格式查看
- 7. [重点]HTTP请求报文格式
- 8. [重点]HTTP响应报文格式
- 9. 长连接和短连接
1. tcp的3次握手
- 三次握手是TCP建立连接的时候发送的三个数据包
1、概念
2、简单描述通信过程
3、必须是3次,如果少于3次,会造成系统资源的浪费
2. tcp的4次挥手
- 四次挥手,指的TCP断开连接的时候发送4个数据包,确保断开连接
1、概念
2、简单描述过程
3、必须是4次 (新连接收到老的数据包)
4、主动发起断开的一方,必须等待2MSL时间
3. IP地址和域名
- ip地址
- ip地址网络中计算机的唯一标识,点分10进制构成
- ipv4和ipv6
- 域名
- Doman name
- 因为网络通信需要使用ip地址,但是ip地址不容易记忆,所以才有了更好记忆的域名
- 特殊域名:localhost
4. DNS及浏览器请求服务器的过程
- 浏览器–输入网址–>本地DNS服务器查询ip–>远程DNS服务器–>建立TCP连接
- 本地DNS服务器是一个文件
- Windows C:\Windows\System32\drivers\etc\hosts
- Ubuntu /etc/hosts
5. HTTP协议概述
- http 协议,超文本传输协议,主要用来发布和传输html页面(网页)
- http协议2部分构成:
- 请求协议
- 响应协议
协议由协议项来构成
协议项:1)协议名 2)协议值
6. [重点]HTTP协议格式查看
- 谷歌
- 右键–>检查–>network–>刷新
- 更多—》开发者工具
- F12
- 火狐
- 右键–> 检查元素–》网络–》刷新
7. [重点]HTTP请求报文格式
- 请求报文格式
- 请求行
请求方式 资源路径 协议及版本\r\n
- 请求头
协议项
协议名: 协议值 \r\n
- 请求空行
请求空行的作用:分隔请求头和请求的主体
- 请求主体
浏览器要发送给服务端的内容
get方式没有请求体,post方式才有请求体
8. [重点]HTTP响应报文格式
- 响应协议
- 响应行
协议及版本 状态码 状态描述\r\n
常见状态码:
200 一切正常
404 客户端请求的资源不存在
302 重定向
- 响应头
协议项构成
协议名 : 协议值\r\n
- 响应空行
分隔响应头和响应 主体
- 响应主体
服务器响应给客户端的数据
9. 长连接和短连接
- 长连接
一次连接,多次数据传输,通信结束关闭连接
- 特点:
要不连不上,一旦连接上,速度有保证,当瞬间访问压力比较大的时候,服务器不可用 - 短连接
一次连接,一次传输,就关闭
- 特点:
会频繁的建立和断开连接,当瞬间访问压力比较大的时候,服务器响应过慢