阿里巴巴HTTP 2.0实践及无线通信协议的演进之路

所需积分/C币:10 2017-11-30 16:51:01 929KB PDF
16
收藏 收藏
举报

GMTC全球移动技术大会ppt 作者:阿里巴巴-移动平台 仲升(陈虓将) 主题:阿里巴巴HTTP 2.0实践及无线通信协议的演进之路
HTTP/2概况 Application(http:/2 Post /uploAd Http/1.1 Binary Framing Host: acs, m, taobao. com Content-Type: application/json Content-Length: 16 TLS SlightSSL QUIC “msg”," taobao”} TCP UDP HEADERS Frame P DATA Frame 协议协商 进制协议 ALPN(TLS)或 protocol upgrade(明文) 流 连接序言 会话级别&连接级别 会话协商 双工通信&多路复用 · Settings frame 主动下行 头部压缩 多个请求并发 · HPACK Http/2 Frames Bit 0-7 8-15 16-23 24-31 ngth ype Flags 40 R Stream Identifier Frame Payload 2的去关合 帧格式 用途 headers 存放头部数据,用以打开个 stream continuation 延续之前未发送完毕的包头信息 data 存放应用数据 rst stream 异常关闭个 stream settings 参数协商 pIng 心跳包,用以刺探连接是否存活 goaway 发送端优雅关闭 window_update 流控,分为 stream和 connection两个级别 http的帧格式 办商参数 含义 SETTINGS HEADER TABLE SIZE 用于解压的头部动态压缩表最大大小,默认4096 SETTINGS ENABLE PUSH 用于禁止或后用服务端推送 SETTINGS MAX CONCURRENT STREAM 最大并发流数,默认无限制 SETTINGS INITIAL WINDOW SIZE 会话级別的流控的初始窗口大小,默认为65535 SETTINGS MAX FRAME SIZE 帧的 pay load大小限制,默认为16384 SETTINGS_MAX_HEADER_LIST./2的 SETTINGS折的爹数献妙人小默认无职制 Http/2 Workflow Client Ser∨e SYN SYN ACK ACK Settings 连接序言&会话协商 Pri * Http/2rn\rnsm\nirN Window update window in crement size init window size 会话协商 Settings indow increment size Window update Headers 数据交互 method: get path: /index. html Data status: 20 : content-length= 1024 数据交互 Headers Data !DOCTYPE html last stream id E 9 会话关闭 Goaway FIN FIN ACK Http/2 & Hpack Static table Request headers Encoded headers 1:authority .method GET 2: method GET -scheme https 27 chostexample.com 51 referer 63 path/resource 19 Huffman("/resource") user-agent Mozilla/5.0 62 user-agent I Mozilla/5.0 62 custom-hdr some-value 63 chostexample.com Huffman(“ custom-hdn Huffman("some-value" Dynamic table http2Hpack 安全 映射表 DEFLATE压缩算法存在攻击风险 经常出现或重复出现的 Header用映射表的ndex表示 压缩率 静态 Huffman编码 通过新的算法得到进一步提升 未命屮映射表的 Header用 Huffman编码 HTTP/2的效果 单位:字节 单位:毫秒 1750 http spdy http:/2 3000 spdy 1400 2250 1050 1500 700 350 750 0 请求包头 应答包头 2G 3G 4G VIFI http请求和应答包头的流量下降 http请求整体提速 ∏TP/2的优化过程 宇节数100% 百分比 2750 125 2200 100 1650 52.4% 75 48.5% 100 35.3%… 50 31.5% 550 25 0 spdy 下行 huffman 动态表可协商 ht!2头部压缩分阶段优化 HTTP/2的实现 Nginx Patch 小包合并 无线下的调优 连接序言/ settings/ headers合并成 原生 个TCP包 上下行均支持静态表 流控 上行支持动态表和 Huffman编码 会话级别下行流控 采用默认的动态表大小,无协商 扩展 下行动态表和 Huffman编码 上下行动态表大小协商 网络库SDK实现HTTP2 SDK支持 复用网络库框架,统一上层接口 内部解析、封装HTTP2 HTTP2的细节 HPACK的动态表大小 ●HTTP2VSSPDY 预置 HPACK静态表 上行和下行分别独立 包人小 ●均由服务端控制 Http2 40k 通过控制 SETTING ACK实现 SPDY 20K ●适配两种场景 场景选择 压缩率优先调整至32K PUSH场景 优选SPDY 内存优先采用默认的4K ·Req/Resp场景优选HTP2 HPACK动态表的更新 HPACK的延伸 ●更新必须同步,否则会出错 统计常见字段出现的频度 请求封装完毕后必须发出 自定义映射表,优化自定义协议

...展开详情
试读 19P 阿里巴巴HTTP 2.0实践及无线通信协议的演进之路
立即下载 身份认证后 购VIP低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
上传资源赚钱or赚积分
最新推荐
阿里巴巴HTTP 2.0实践及无线通信协议的演进之路 10积分/C币 立即下载
1/19
阿里巴巴HTTP 2.0实践及无线通信协议的演进之路第1页
阿里巴巴HTTP 2.0实践及无线通信协议的演进之路第2页
阿里巴巴HTTP 2.0实践及无线通信协议的演进之路第3页
阿里巴巴HTTP 2.0实践及无线通信协议的演进之路第4页

试读结束, 可继续读2页

10积分/C币 立即下载