应用层协议:HTTP
2024-09-17 05:00:07
1. HTTP定义
HyperText Transfer Protocol,超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据,互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准。
HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。
使用TCP端口为:80
2. HTTP历史
3. HTTP多路复用
https://blog.csdn.net/xiaoming100001/article/details/81109617
多路复用:通过单一的HTTP/2连接请求发起多重的请求-响应消息,多个请求stream共享一个TCP连接,实现多留并行而不是依赖建立多个TCP连接。
4. HTTP报文格式
5. HTTP通信传输
超文本传输协议,是一个基于请求与响应,无状态的,应用层的协议,常基于TCP/IP协议传输数据(三次握手,四次挥手)
- 客户端输入URL回车,
- DNS解析域名得到服务器的IP地址
- 服务器在80端口监听客户端请求,端口通过TCP/IP协议(可以通过Socket实现)建立连接。
- 报文从运用层传送到运输层,运输层通过TCP三次握手和服务器建立连接,四次挥手释放连接。
5. 缺点
HTTP协议基于TCP进行传输的,其中传输的内容全都裸露在报文中,如果我们获取了一个HTTP消息体,那我们可以知道消息体中所有的内容。这其实存在很大的风险,如果HTTP消息体被劫持,那么整个传输过程将面临:
(1) 窃听风险(eavesdropping):第三方可以获知通信内容。
(2) 篡改风险(tampering):第三方可以修改通信内容。
(3) 冒充风险(pretending):第三方可以冒充他人身份参与通信。
正因为HTTP协议的这个缺点, HTTP变成了一种不安全的协议。
参考网址
最新文章
- windows消息和消息队列
- Java web项目引用java项目,类型找不到
- [转载]Jmeter那点事·ForEach和If控制器
- datatable 的ajax修改参数,post可以传参处理
- Android res资源文件夹的知识积累
- JSON和XML的比较
- Remember the Word,LA3942(Trie树+DP)
- Jquery弹出窗口
- 第二十八条:利用有限制通配符来提升API的灵活性
- rabbitMq交换机direct、topics
- eclipse添加spring boot 插件
- CPP全面总结(涵盖C++11标准)
- Nginx单向认证的安装配置
- mysql存储过程之游标
- MySQL数据库----表与表之间的关系
- 第四章 数据更新 4-1 数据的插入(INSERT 语句的使用方法)
- HDU 2571 命运 (入门dp)
- Linux make语法补充
- javascript 动态脚本添加
- go语言基础之Printf和Println的区别