HTTP
-
定义:HTTP是一种应用层协议,主要用于互联网中传输超文本(Hypertext)和其他资源,如图片、音频、视频等。
-
特点:
-
无状态协议:每个请求和响应都是独立的。
-
建立在TCP/IP协议之上:利用TCP连接传输数据,采用客户端/服务器模式。
-
多种请求方法:支持GET、POST等多种请求方式。
-
版本发展:
-
HTTP/0.9:仅能处理纯文本(ASCII)格式的信息,只支持GET请求方式。
-
HTTP/1.0:引入多种请求方法和响应头字段,支持多种媒体类型的数据传输。
-
HTTP/1.1:采用持久连接技术,在同一个连接上进行多次请求和响应。
-
HTTP/2:引入二进制格式传输、多路复用和服务器推送等特性,提高页面渲染速度。
-
HTTP/3
定义:HTTP/3是一种新的网络协议,旨在提供更快的互联网连接速度和更高的安全性。 -
特点:
-
采用QUIC协议作为传输层协议:相比TCP+TLS的组合,QUIC可以减少连接建立的时延,提高数据传输的效率。
-
支持0-RTT连接:进一步加快连接的建立速度。
-
多路复用技术:在一个连接上可以同时进行多个数据流的传输,避免TCP连接的队头阻塞问题。
HTTPS
-
定义:HTTPS是以安全为目标的HTTP通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。
-
特点:
-
在HTTP的基础上加入SSL:HTTPS的安全基础是SSL,因此加密的详细内容需要SSL。
-
不同于HTTP的默认端口:HTTPS使用443端口,而HTTP使用80端口。
-
提供身份验证与加密通讯方法:被广泛用于万维网上安全敏感的通讯,如交易支付等。
WebSocket
-
定义:WebSocket是一种在单个TCP连接上进行全双工通信的协议。
-
特点:
-
客户端和服务器之间的数据交换简单:允许服务端主动向客户端推送数据。
-
握手过程:通过HTTP/1.1协议的101状态码进行握手。
-
创建持久性连接:浏览器和服务器只需要完成一次握手,就可以进行双向数据传输。
TCP
-
定义:TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议。
-
特点:
-
面向连接:通信双方必须先建立TCP连接,传输数据完毕后必须释放连接。
-
可靠性:通过序列号、确认和重传机制保证数据传输的可靠性。
-
全双工通信:通信双方的应用进程在任何时候都能发送数据。
UDP
-
定义:UDP是一种无连接的、不可靠的、面向数据报的传输协议。
-
特点:
-
无连接性:通信双方在传输数据之前不需要建立连接。
-
不可靠性:不提供数据包的确认和重传机制,也不保证数据包的顺序性。
-
面向数据报:以数据报为基本单位进行通信,每个数据报是一个独立的、完整的消息。
SMTP
-
定义:SMTP是一种提供可靠且有效的电子邮件传输的协议。
-
特点:
-
建立在FTP文件传输服务上:主要用于系统之间的邮件信息传递,并提供有关来信的通知。
-
邮件中继:能跨越网络传输邮件,即“SMTP邮件中继”。
FTP
-
定义:FTP是一种用于文件传输的协议,允许用户将文件从一台计算机传输到另一台计算机。
-
特点:
-
基于TCP协议:使用TCP协议进行数据传输,确保数据传输的可靠性。
-
客户端/服务器模式:采用客户端/服务器模式进行文件传输,用户可以通过FTP客户端软件连接到FTP服务器进行文件上传和下载。
以上是对这些网络协议的简要介绍和特点总结,每种协议都有其独特的应用场景和优势。
网络安全学习资源分享:
成长路线图&学习规划
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
网安入门到进阶视频教程
我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。
技术文档
我们也提供了一些技术文档,大家可以参考。
所有资料共282G,朋友们如果有需要全套资料包,可以点下面卡片获取,无偿分享!