网络型(TCP/UDP)和应用型(HTTP/HTTPS)有什么不同

image

网络型(TCP/UDP)和应用型(HTTP/HTTPS)协议之间的主要区别在于它们在网络通信模型中所处的层次以及各自的功能。

1. 网络分层模型

理解这些协议的关键在于了解网络分层模型,最常用的是OSI模型(开放系统互联模型)和TCP/IP模型。

  • OSI模型将网络通信分为七层:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
  • TCP/IP模型是一个更简洁的四层模型:网络接口层、互联网层、传输层和应用层。

2. TCP/UDP (传输层协议)

TCP (传输控制协议) 和 UDP (用户数据报协议) 属于网络分层模型中的传输层。 它们负责在网络中的不同应用程序之间提供端到端的数据传输服务。

  • TCP (Transmission Control Protocol)

    • 面向连接:在数据传输前会建立连接(通过三次握手),并在传输结束后终止连接。
    • 可靠性:TCP确保数据可靠传输,通过序列号、确认应答和重传机制来保证所有数据包按序到达且无丢失。 如果数据包丢失或损坏,TCP会请求重传。
    • 有序性:保证数据包按发送顺序到达接收方。
    • 流量控制和拥塞控制:防止发送方数据发送过快导致接收方或网络过载。
    • 应用场景:适用于对数据完整性和顺序有严格要求的应用,如网页浏览 (HTTP/HTTPS)、电子邮件、文件传输 (FTP) 和数据库连接。
  • UDP (User Datagram Protocol)

    • 无连接:在数据传输前不建立连接,直接发送数据。
    • 不可靠性:不保证数据包的到达、顺序或完整性,也不会重传丢失的数据包。
    • 速度快,开销小:由于没有连接建立、确认和重传机制,UDP的传输速度更快,延迟更低。
    • 应用场景:适用于对实时性要求高、允许少量数据丢失的应用,如视频流、在线游戏、VoIP (网络电话) 和DNS查询。

3. HTTP/HTTPS (应用层协议)

HTTP (超文本传输协议) 和 HTTPS (安全超文本传输协议) 属于网络分层模型中的应用层。 它们定义了应用程序之间如何交换数据,特别是用于Web浏览器和Web服务器之间的通信。

  • HTTP (Hypertext Transfer Protocol)

    • 功能:用于传输超媒体文档(如HTML文件)。 它是万维网数据通信的基础。
    • 基于TCP:HTTP通常运行在TCP之上,利用TCP的可靠性来确保网页内容的正确传输。
    • 无状态:HTTP协议本身是无状态的,每个请求都被视为独立的事务。
    • 不加密:HTTP传输的数据是明文的,容易被截获和窃听。 默认使用端口80。
  • HTTPS (Hypertext Transfer Protocol Secure)

    • HTTP的安全版本:HTTPS不是一个独立的协议,而是HTTP与SSL/TLS (传输层安全协议) 的结合。
    • 加密:通过SSL/TLS协议对HTTP通信进行加密,确保数据在客户端和服务器之间传输时的安全性、完整性和身份验证。
    • 工作原理:HTTPS在应用层和传输层之间添加了一个安全层(TLS/SSL)。 它使用公钥基础设施进行加密。
    • 默认端口:默认使用端口443。
    • 重要性:对于涉及敏感信息(如登录凭据、银行卡信息)的网站至关重要,现代浏览器会标记非HTTPS网站为“不安全”。

总结表格

特性 TCP (传输层) UDP (传输层) HTTP (应用层) HTTPS (应用层)
**所属层** 传输层 传输层 应用层 应用层 (基于HTTP,通过TLS/SSL提供安全)
**连接性** 面向连接 (需要三次握手建立连接) 无连接 (直接发送数据) 无连接 (每个请求独立) 无连接 (每个请求独立,但底层TLS/SSL会建立安全会话)
**可靠性** 可靠 (保证数据按序、完整到达,有重传机制) 不可靠 (不保证数据到达、顺序或完整性) 依赖底层TCP的可靠性 依赖底层TCP的可靠性,并通过TLS/SSL提供数据完整性
**速度/开销** 相对较慢,开销较大 (因为有连接管理、确认、重传等) 速度快,开销小 (无额外管理机制) 相对较快 (无加密开销) 相对较慢 (有加密/解密开销)
**安全性** 不提供加密 不提供加密 不安全 (数据明文传输) 安全 (通过TLS/SSL加密数据)
**主要功能** 提供进程间的可靠数据流传输 提供进程间的不可靠数据报传输 定义Web客户端和服务器之间如何交换超文本信息 在HTTP基础上增加安全加密层
**典型端口** (无特定默认端口,但常用于Web服务,如HTTP的80,HTTPS的443) (无特定默认端口,但常用于DNS的53) 80 443
**适用场景** 网页浏览、文件下载、电子邮件、SSH 视频流、在线游戏、VoIP、DNS查询 非敏感信息网站 (已逐渐被HTTPS取代) 所有需要数据安全和隐私的网站,如在线银行、电商、社交媒体

简而言之,TCP和UDP是底层的数据传输机制,关注数据如何从一个点传输到另一个点;而HTTP和HTTPS是上层的应用协议,关注传输的数据内容以及应用程序如何解释和使用这些数据。HTTPS在HTTP的基础上增加了安全层,使得数据传输更加安全。

posted @ 2026-02-28 10:45  技术摘抄  阅读(0)  评论(0)    收藏  举报