当前位置: 首页 > article >正文

【项目开发】理解SSL延迟:为何HTTPS比HTTP慢?

未经许可,不得转载。

文章目录

    • 前言
    • HTTP与HTTPS的耗时差异
      • TCP握手
      • HTTPS的额外步骤:SSL握手
    • 使用curl测量SSL延迟
    • 性能与安全的权衡

前言

在互联网发展的早期阶段,Netscape公司设计了SSL(Secure Sockets Layer)协议,为网络通信提供加密和安全性。有人曾提出一个大胆的设想:让互联网的所有链接都使用加密的HTTPS。然而,这一提议并未被采纳,原因之一是HTTPS链接在性能上不如HTTP链接——主要体现在“SSL延迟”上。

HTTP与HTTPS的耗时差异

要理解这一现象,需要了解HTTP和HTTPS链接的建立过程。两者都基于TCP协议,因此都需要经历TCP握手的过程。

TCP握手

TCP握手是通信双方在传输数据前建立连接的必要步骤,通常包括以下三次数据包交换:

  1. 客户端发送 SYN:请求建立连接。
  2. 服务器回应 SYN+ACK:确认并同意连接。
  3. 客户端发送 ACK:确认连接成功。

这一过程通常只需三个数据包的时间,随后即可开始发送数据。


http://www.kler.cn/a/399109.html

相关文章:

  • 第 14 章 -Go语言 错误处理
  • 6.584-Lab1:MapReduce
  • C/C++基础知识复习(23)
  • 工厂模式-工厂方法模式实现
  • 直接映射4条 cacheline,每条cacheline32位数据(混乱版)
  • 基于Java的旅游类小程序开发与优化
  • MoneyPrinterTurbo - AI自动生成高清短视频
  • 学习大数据DAY62 指标计算
  • mybatisPlus打印sql配置
  • Java面试之多线程并发篇(3)
  • 【51单片机】LCD1602液晶显示屏
  • Spring Boot 应用程序中集成 Redis 并实现存储读取字符串或者复杂对象
  • 【MySQL】MySQL的笛卡尔积现象是什么?简单说说
  • Django数据写入MySQL数据库
  • 蓝牙 HFP 协议详解及 Android 实现
  • 用 Python 从零开始创建神经网络(八):梯度、偏导数和链式法则
  • Elasticsearch基本概念及使用
  • css:修改盒子样式
  • vue3 查看word pdf excel文件
  • 【论文阅读】(Security) Assertions by Large Language Models
  • # JAVA中的Stream学习
  • STM32设计防丢防摔智能行李箱
  • 计算机毕业设计 | springboot+vue大学城水电管理系统 校园学校物业水电管理(附源码+文档)
  • Spring:IoC/DI加载properties文件
  • opencv kdtree pcl kdtree 效率对比
  • Linux中开启 Vim 之旅:从快捷键到插件的实用手册