前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >HTTP/2协议之连接前言【原理笔记】

HTTP/2协议之连接前言【原理笔记】

作者头像
瓜农老梁
发布2020-05-11 11:22:46
9370
发布2020-05-11 11:22:46
举报
文章被收录于专栏:瓜农老梁瓜农老梁

HTTP/2在传输数据之前,先建立连接,建立HTTP/2连接的标记为Client发送连接前言Magic。HTTP/2属于应用层,位于TPC/IP及安全传输层协议TLS之上。在建立HTTP/2连接的过程中,会先后经历TCP握手、TLS握手、HTTP/2连接前言。下图网络分层图示:

一、TCP握手回顾

回顾下TCP的三次握手,三次握手后TPC连接建立,具体步骤如下: 第一步:Client发送[SYN]报文到Server。Client进入SYN_SENT状态,等待Server响应。[SYN]报文序号Seq=x《备注:截图中Seq=0》 第二步:Server收到后发送[SYN,ACK]报文给Client,ACK为x+1(备注:截图中ACK=1); [SYN,ACK]报文序号为y(备注:截图中Seq=0),Server进入SYN_RECV状态 第三步:Client收到后,发送[ACK]报文到Server,包序号Seq=x+1,ACK=y+1。Server收到后Client/Server进入ESTABLISHED状态。

TPC握手报文
TPC握手交互图
二、TLS握手简化回顾

TLS传输层安全协议,主要回顾简化的交互过程:

第一步

Client向Server发送ClientHello,包括支持的协议版本、Client随机数、支持的加密算法等

第二步

Server向Client发送ServerHello,包括确认协议版本、Server随机数、确认加密算法、Server证书

第三步

Server向Client发送证书,客户端校验证书有效性

第四步

Client通知Server用协商的密钥进行通信

第五步

传输加密数据

三、建立HTTP/2连接前言

在TLS之后,Client会向Server发送Magic标记着HTTP/2连接的建立,具体Magic为:PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n 详见下图:


本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 瓜农老梁 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、TCP握手回顾
    • TPC握手报文
      • TPC握手交互图
      • 二、TLS握手简化回顾
        • 第一步
          • 第二步
            • 第三步
              • 第四步
                • 第五步
                • 三、建立HTTP/2连接前言
                相关产品与服务
                SSL 证书
                腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档