鍍金池/ 教程/ Linux/ 升級(jí)HTTP
后http2時(shí)代
升級(jí)HTTP
擴(kuò)展
擴(kuò)展閱讀
致謝
http2 的世界
curl中的http2
Chromium里的http2
背景
Firefox里的http2
HTTP 的現(xiàn)狀
http2 協(xié)議
http2 的基本概念
那些年,克服延遲之道

升級(jí)HTTP

花點(diǎn)功夫去改善HTTP協(xié)議顯然是極好的事情。我們可以著手于以下幾個(gè)方面:

  1. 降低協(xié)議對(duì)延遲的敏感
  2. 修復(fù)pipelining和head of line blocking的問(wèn)題
  3. 防止主機(jī)需求更高的連接數(shù)量
  4. 保留所有現(xiàn)有的接口,內(nèi)容,URI格式和結(jié)構(gòu)
  5. 由IETF的HTTPbis工作組來(lái)制定

4.1. IETF和HTTPbis工作組

The Internet Engineering Task Force (IETF)是一個(gè)開發(fā)和推廣互聯(lián)網(wǎng)標(biāo)準(zhǔn)的組織。他們的重心是在協(xié)議層面。他們最出名的工作是制定了TCP、DNS、FTP和它們最佳實(shí)踐的RFC規(guī)范,但HTTP和許多其他協(xié)議卻進(jìn)展緩慢。

IETF成立獨(dú)立的“工作組”以便完成某一特定領(lǐng)域內(nèi)的目標(biāo),他們建立一個(gè)“章程”用以制定達(dá)到目標(biāo)的指導(dǎo)方針和規(guī)范。在這里,任何人都可以參與討論和開發(fā),并且每個(gè)人有同等的話語(yǔ)權(quán),沒(méi)人關(guān)心你來(lái)自哪個(gè)公司或組織。

HTTPbis工作組(我們待會(huì)兒再解釋這個(gè)名字)在2007年夏天成立之后就著手于HTTP1.1標(biāo)準(zhǔn)的更新。在組內(nèi),關(guān)于下一版本HTTP協(xié)議的討論實(shí)際上在2012年后期才開始。而HTTP1.1的更新工作在2014年初完成,并被整理成RFC7320系列。

2014年6月初,HTTPbis工作組名義上的最終版文檔大會(huì)在紐約召開。剩下的討論以及等IETF走完流程通過(guò)官方的RFC版本預(yù)計(jì)在來(lái)年完成。

一些HTTP領(lǐng)域的權(quán)威缺席了工作組的討論和會(huì)議。我并不想在此提及任何公司和產(chǎn)品。但事實(shí)上當(dāng)今互聯(lián)網(wǎng)上很多聲音仿佛也在肯定,不需要這些公司參與IETF也能做得很好。。。

4.1.1. 名字中的“bis”

工作組名字中的“bis”來(lái)自拉丁語(yǔ)中表示“二”的副詞,Bis通常被IETF用作名字的后綴來(lái)以表示標(biāo)準(zhǔn)的升級(jí)或者一些二次工作,比如這里是針對(duì)HTTP1.1。

4.2. 起源于SPDY的http2

SPDY是由Google牽頭開發(fā)的協(xié)議。他們將其開源,使得每個(gè)人都可以參與開發(fā)。但很明顯,他們通過(guò)控制瀏覽器的實(shí)現(xiàn)和享用著優(yōu)質(zhì)服務(wù)的大量用戶來(lái)獲益。

當(dāng)HTTPbis小組決定開始制定http2的時(shí)候,SPDY已經(jīng)充分證實(shí)了它是一個(gè)非常好用的方案。當(dāng)時(shí)已經(jīng)有人在互聯(lián)網(wǎng)上成功部署SPDY,并且也有一些文章討論他的性能。因此,http2便基于SPDY/3草案進(jìn)行一些修改之后發(fā)布了http2的draft-00。