网络协议

HTTP协议

HTTP:超文本传输协议,用于客户端和服务器之间传输超文本

HTTP是万维网的基础,支持网页浏览、文件下载、API调用等应用场景

HTTP的工作原理

HTTP使用客户端-服务器模型,通过请求-响应的方式传输数据

核心功能是客户端向服务器发送请求,服务器返回响应

HTTP请求-响应流程

image-20260324191523780

  • 客户端:向服务器发送HTTP请求(如GET/index.html)
  • 服务器:处理请求并返回HTTP响应(如200OK 和网页内容)

HTTP请求结构

  • 请求行:包括请求方法(如GET、POST)、请求资源(如/index.html)和协议版本(如HTTP/1.1)

  • 请求头:包含附加信息(如Host、User-Agent、Accept)

  • 请求体:用于传输数据(如POST请求的表单数据)

1
2
3
4
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html

HTTP的关键特性

无状态协议

  • 每次请求都是独立的,服务器不会保存客户端的状态
  • 通过Cookie和Session实现状态管理

支持多种请求方法

  • GET:获取资源
  • POST:提交数据
  • PUT:更新资源
  • DELETE:删除资源

支持多种数据类型

  • 通过Contennt-Type头指定数据类型(如text/html、application/json)

缓存机制

  • 通过Cache-Control和ETag头实现缓存,提高性能

HTTP应用场景

  • 网页浏览:通过浏览器访问网页
  • API调用:通过RESTful API传输资源
  • 文件下载:下载文件或资源
  • 表单提交:提交用户输入的数据

HTTP安全性问题

HTTP本身不安全,因为在传输过程中使用明文传输数据,容易遭受一下攻击

  • 窃听:攻击者可以窃听传输的数据
  • 篡改:攻击者可以篡改传输的数据
  • 伪装:攻击者可以伪装成服务器或客户端

HTTPS协议

HTTPS:安全超文本传输协议,是HTTP的安全版本,通过在HTTP和传输层之间加入TLS/SSL加密层,保护数据传输的安全性和完整性

HTTPS广泛用于保护敏感信息的传输

HTTPS的工作原理

核心:在HTTP的基础上增加了TLS/SSL加密层,通过加密和身份验证机制保护数据传输,总结来说就是在HTTP的基础上通过一些加密使得用户信息更加安全

HTTPS连接建立

image-20260324191528524

  • ClientHello:客户端发送支持的加密算法列表
  • ServerHello:服务器选择加密算你发并发送服务器证书
  • 证书验证:客户端验证服务器证书的有效性
  • 密钥交换:客户端生成预主密钥,用服务器公钥加密后发送
  • 会话密钥:双方根据预主密钥生成会话密钥,用于加密后续通信

HTTP通信

在加密通道建立后,客户端和服务器通过HTTPS进行HTTP通信

image-20260324191535617

  • 客户段发送加密的HTTP请求
  • 服务器返回加密的HTTP响应

HTTPS的关键特性

加密通信

  • 使用对称加密(如AES)加密数据
  • 使用非对称加密(如RSA)交换密钥

身份验证

  • 通过服务器证书验证服务器的身份
  • 可选地通过客户端证书验证客户端的身份

数据完整性

MCP协议

MCP,模型上下文协议,是一种开放协议,旨在实现大型语言模型(LLM) 应用与外部数据源、工具和服务之间的无缝集成,类似于网络中的 HTTP 协议或邮件中的 SMTP 协议


网络协议
https://colourful228.github.io/2026/03/21/网络协议/
作者
Colourful
发布于
2026年3月21日
更新于
2026年4月15日
许可协议