1. 程式人生 > >wireshark工具分析tcp三次握手以及http2配置

wireshark工具分析tcp三次握手以及http2配置

一、wireshark工具分析tcp三次握手

TCP三次握手(預互動過程,都是tcp包)

1.客戶端傳送TCP SYN:我的埠是60280,我需要訪問你的埠443。SEQ Number(初始化序列號isn)=0

2.伺服器傳送TCP SYN/ACK 允許你訪問我的埠,我也需要訪問你的60280埠。ACK(確認號)=1即序列號+1,伺服器也隨機生成一個序列號SEQ=0

3.客戶端傳送 TCP ACK 允許你訪問我的443埠。ACK=1

二、http2配置

2.1優勢

①通道複用(支援一個tcp connector,併發傳送,併發返回)

②分幀傳輸(每一幀都有上下文聯絡,可以亂序傳送,最後根據幀資訊組合資料,可以併發傳送請求)。

③ServerPush(伺服器主動向客戶端傳送資訊)

Http1.1只支援一個請求傳送完之後再發送第二個請求。服務端返回也是先返回第一個請求然後第二個。HTTP2支援一個tcp connector連線。基於通道複用,分幀傳輸,server push可以併發傳送,併發返回。

2.2nginx配置Http2

         自動相容http1.1。不需要考慮客戶端使用協議,通過nginx將http2轉http1.1傳給我們後端。

2.2.1條件

1、openssl的版本必須在1.0.2e及以上

2、nginx的版本必須在1.9.5以上

3、編譯的時候加了模組:--with-http_v2_module

2.2.2配置

         server{

                   listen 443 http2;

        server_name xxx.com;

    http2_push_preload on;

}

2.2.3驗證:

用chrome開啟瀏覽器訪問網址:www.xxx.com

在chrome開啟:chrome://net-internals/#http2