1. 程式人生 > >HTTP ------ connection 為 close 和 keep-alive 的區別

HTTP ------ connection 為 close 和 keep-alive 的區別

圖片 tcp連接 三次握手 字段 tcp 其它 時代 http 網頁

keep-alive和close這個要從TCP握手講起


HTTP請求是基於TCP連接的,TCP的請求會包含(三次握手,中間請求,四次揮手)
在HTTP/1.0時代,一個HTTP請求就要三次握手和四次揮手,當一個網頁中包含大量的圖片或者其它外部資源時,加載一個Document要很多個HTTP請求,也就意味著要多次三次握手和四次揮手,這樣就造成了網絡資源的浪費

到了HTTP/1.1的時候,通過請求頭的connection字段用來申明,作用就是減少TCP握手次數,開始的三次握手後就可以進行多次HTTP正文請求,可以長時間的保持,也就是加載一個Document的時候,即使有大量的圖片等,也只用進行一次握手,這樣就大大的減少了傳輸量了。keep-alive就表示之前已經進行過握手,可以直接進行HTTP正文傳輸,close表示結束,我接下來沒有東西了,可以進行四次揮手結束這個TCP連接了

HTTP ------ connection 為 close 和 keep-alive 的區別