HTTP相关知识

一、网络

网络七层模型主要包括:

  1. 物理层:主要定义物理设备标准,即模数转换与数模转换。数据为比特。
  2. 数据链路层:对物理层接收数据进行MAC(网卡)地址的封装与解封。数据为帧。设备是交换机。
  3. 网络层:对物理链路层接收数据进行IP地址的封装与解封。数据为数据包。设备为路由器。
  4. 传输层:定义传输数据的协议和端口号。如TCP、UDP。
  5. 会话层:通过传输层建立数据传输通道。
  6. 表示层:对接收数据进行解释、加密与解密、压缩与解压等。
  7. 应用层:终端应用。如web、qq。

1)、TCP/IP原理

TCP/IP协议:因特网整个TCP/IP协议族。从协议分层模型来说,TCP/IP由四个层次组成:

  1. 网络接口层:指出主机必须使用某种协议与网络连接。
  2. 网络层:互联网层使用IP协议。
  3. 传输层:定义了两个端到端的协议,即TCP协议和UDP协议。
  4. 应用层:所有高层协议。如文件传输协议FTP、电子邮件传输协议SMTP

2)、TCP三次握手与四次挥手

数据包说明:

  1. 16位源端口号
  2. 16位目的端口号
  3. 32位序列号
  4. 32位确认号
  5. 4位首部长度
  6. 6个保留位
  7. URG、ACK、PSH、RST、SYN、FIN6个控制位
  8. 16位窗口大小:从确认号开始,可以接收的字节树。最大位65535字节
  9. 16位TCP校验和
  10. 16位紧急指针
  11. 选项(可选)
  12. 数据

三次握手

四次挥手

3)、HTTP原理

HTTP是一个无状态协议。无状态指客户机和服务器之间不需要建立持久连接,意味着当一个客户端向服务器端发出请求,然后服务端返回响应,连接就被关闭了。在服务端不保留连接的有关信息。HTTP遵循请求/应答模型。客户机向服务器发送请求,服务器处理请求并返回适当的应答。所有HTTP连接都被构建成一套请求和应答。传输流程如下:

  1. 地址解析:解析出协议号http,主机号,端口号,对象路径
  2. 封装HTTP请求数据包:将上述信息结合本机信息封装成一个HTTP请求数据包
  3. 封装成TCP包,并建立连接:TCP三次握手
  4. 客户机发送请求命令:
  5. 服务器响应:
  6. 服务器关闭TCP连接:Connection:keep-alive,TCP连接在发送后仍保存打开状态

HTTP状态码:

  • 消息响应:100继续,101切换协议
  • 成功响应:200成功,201已创建create,202已创建accepted
  • 重定向:301永久移除,302临时移除,307临时重定向,308永久重定向
  • 客户端错误:400错误请求,401未授权,402需要付款,403禁止访问,404找不到,405不允许使用该方法,406无法接收,408请求超时
  • 服务器端错误:500内部服务器错误,501未实现,502网关错误,503服务不可用,504网关超时,505HTTP版本不受支持

HTTPS:以安全为目标的HTTP通道。安全基础为SSL,所用端口号443。过程如下

  1. 建立连接获取证书:SSL客户端通过TCP和服务器建立连接之后(443端口),在tcp三次握手过程中向服务器请求证书。
  2. 证书验证:客户端收到证书后进行验证
  3. 数据加密和传输:若证书有效,客户端生成密钥并使用服务器的公共密钥进行加密,然后发送给服务器。服务器使用它的私钥进行解密,成功则进行通信

CDN原理:一般含分发服务系统、复制均衡系统、管理系统

分发服务系统:承担内容同步、更新和响应用户请求

负载均衡系统:对用户请求进行调度,确定提供给用户的最终访问地址

管理系统:网络管理(设备管理、拓扑管理、链路监控和健康管理),运营管理(用户管理、产品管理、计费管理、统计分析)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值