互聯(lián)網(wǎng)創(chuàng)新與之相比弱爆了!協(xié)議才是未來(lái)!
今天,互聯(lián)網(wǎng)非常繁榮,移動(dòng)互聯(lián)網(wǎng)更是來(lái)勢(shì)洶洶,但如果沒(méi)有互聯(lián)網(wǎng)協(xié)議迭代,就不會(huì)有今天的互聯(lián)網(wǎng),讓我們看看這些協(xié)議。
在20世紀(jì)90年代互聯(lián)網(wǎng)開(kāi)始廣泛使用時(shí),大多數(shù)網(wǎng)絡(luò)流量只使用少量幾個(gè)協(xié)議:IPv4路由數(shù)據(jù)包,TCP將這些包轉(zhuǎn)換為連接,SSL/TLS加密這些連接,DNS命名主機(jī)連接,HTTP是經(jīng)常使用它的應(yīng)用程序協(xié)議。
多年來(lái),這些核心互聯(lián)網(wǎng)協(xié)議的變化微乎其微,而HTTP只是增加了一些新的標(biāo)題和方法,TLS進(jìn)行了一些小修改,TCP適應(yīng)了擁塞控制,DNS引入了DNSSEC等功能,這些協(xié)議本身在很長(zhǎng)一段時(shí)間內(nèi)看起來(lái)都是一樣的(除了已經(jīng)在網(wǎng)絡(luò)運(yùn)營(yíng)商社區(qū)得到了大量關(guān)注的IPv6協(xié)議)。
因此,那些希望了解(甚至有時(shí)控制)互聯(lián)網(wǎng)的網(wǎng)絡(luò)運(yùn)營(yíng)商、供應(yīng)商以及決策者已經(jīng)采用了許多基于這些協(xié)議的“足跡”覆蓋范圍的做法 - 無(wú)論是為了調(diào)試問(wèn)題,提高服務(wù)質(zhì)量,還是為了施加政策。
現(xiàn)在,核心互聯(lián)網(wǎng)協(xié)議正在發(fā)生重大變化。雖然其目的是要與互聯(lián)網(wǎng)兼容(因?yàn)樗鼈儾粫?huì)被接受),但是它們可能會(huì)破壞那些沒(méi)有未經(jīng)授權(quán)的協(xié)議(現(xiàn)行協(xié)議)。
為什么需要改變互聯(lián)網(wǎng)
推動(dòng)這些變化的因素有很多,首先,核心互聯(lián)網(wǎng)協(xié)議的局限性已經(jīng)變得十分明顯,特別是在性能方面。由于應(yīng)用和傳輸協(xié)議中的結(jié)構(gòu)問(wèn)題,網(wǎng)絡(luò)沒(méi)有得到高效地使用,導(dǎo)致最終用戶認(rèn)為性能不能滿足要求(特別是網(wǎng)絡(luò)延遲)。
這意味著人們有著強(qiáng)烈的動(dòng)機(jī)來(lái)演變或取代這些協(xié)議,因?yàn)橛写罅康慕?jīng)驗(yàn)表明即使是很小的性能收益也會(huì)產(chǎn)生影響。
其次,隨著時(shí)間的推移,演進(jìn)互聯(lián)網(wǎng)協(xié)議的能力變得越來(lái)越困難,這主要是因?yàn)閷?duì)這些網(wǎng)絡(luò)的非預(yù)期使用。例如,試圖壓縮響應(yīng)的HTTP代理使部署新的壓縮技術(shù)變得更加困難;中間件中的TCP優(yōu)化使得部署TCP改進(jìn)變得更加困難。
由于2015年發(fā)生了愛(ài)德華·斯諾登(Edward Snowden)的“棱鏡門”事件,人們認(rèn)識(shí)到安全的重要性,越來(lái)越多地使用互聯(lián)網(wǎng)上的加密技術(shù)。這實(shí)際上是一個(gè)單獨(dú)的討論,但是與此密切相關(guān)的是,加密技術(shù)是人們確保協(xié)議可以發(fā)展演進(jìn)的必須具備的最佳工具之一。
讓我們了解一下發(fā)生了什么,接下來(lái)會(huì)發(fā)生什么,它如何影響網(wǎng)絡(luò),以及網(wǎng)絡(luò)如何影響協(xié)議設(shè)計(jì)。
HTTP/2
HTTP/2(Google 的基于TCP的應(yīng)用層協(xié)議SPDY)是在2015年在標(biāo)準(zhǔn)化方面的第一個(gè)明顯變化,它將多個(gè)請(qǐng)求復(fù)用到一個(gè)TCP連接上,從而避免了在客戶端排隊(duì)請(qǐng)求,而不會(huì)彼此阻塞。它現(xiàn)在被廣泛部署,并得到所有主流瀏覽器和Web服務(wù)器的支持。
從網(wǎng)絡(luò)的角度來(lái)看,HTTP/ 2發(fā)生了一些顯著的變化。首先,這是一個(gè)二進(jìn)制協(xié)議,所以任何假設(shè)它為HTTP/1.1的設(shè)備都將中斷。
這種中斷和破壞是HTTP/ 2另一次重大變化的主要原因之一。它實(shí)際上需要加密。這給了它更好的機(jī)會(huì)來(lái)避免被假設(shè)為HTTP/1.1的中間人攻擊,或者發(fā)生一些更細(xì)微的事情,比如strip headers或阻止新的協(xié)議擴(kuò)展。
HTTP/2還要求在加密時(shí)使用TLS/1.2,并將被判定為不安全的密碼套件列入黑名單,其效果只允許使用短暫密鑰。請(qǐng)參閱TLS 1.3部分以了解潛在的影響。
最后,HTTP/2允許多個(gè)主機(jī)的請(qǐng)求合并到一個(gè)連接上,通過(guò)減少用于頁(yè)面加載的連接數(shù)量(從而減少擁塞控制場(chǎng)景)來(lái)提高性能。
例如,你可以為www.example.com建立連接,但也可以將它用于請(qǐng)求images.example.com。而未來(lái)的協(xié)議擴(kuò)展也可能允許將其他主機(jī)添加到連接上,即使它們沒(méi)有用于它所使用的原始TLS證書(shū)中。因此,假定連接上的流量限于其發(fā)起的目的,則不適用。
盡管有這些變化,但值得注意的是,HTTP / 2似乎沒(méi)有受到顯著的互操作性問(wèn)題或來(lái)自網(wǎng)絡(luò)的干擾。
TLS 1.3
TLS 1.3剛剛完成標(biāo)準(zhǔn)化的最后過(guò)程,并且已經(jīng)得到一些實(shí)現(xiàn)的支持。
不要被其名稱所迷惑;這實(shí)際上是TLS的一個(gè)新版本,握手協(xié)議經(jīng)過(guò)多次修改,允許應(yīng)用程序數(shù)據(jù)從頭開(kāi)始流動(dòng)(通常稱為“0RTT”)。新的設(shè)計(jì)依賴于短暫的密鑰交換,從而排除了靜態(tài)密鑰。
這已經(jīng)引起了一些網(wǎng)絡(luò)運(yùn)營(yíng)商和供應(yīng)商的關(guān)注 - 特別是那些需要了解這些連接內(nèi)部所發(fā)生的事情的人。
例如,一家銀行考慮采用具有可見(jiàn)性監(jiān)管要求的的數(shù)據(jù)中心提供的服務(wù)。通過(guò)嗅探網(wǎng)絡(luò)中的流量并使用其服務(wù)器的靜態(tài)密鑰對(duì)其進(jìn)行解密,它們可以記錄合法的流量并識(shí)別有害的流量,無(wú)論是來(lái)自外部的攻擊者還是從內(nèi)部泄漏數(shù)據(jù)的員工。
TLS 1.3不支持?jǐn)r截流量的特定技術(shù),因?yàn)樗彩桥R時(shí)密鑰抵御攻擊的一種形式。但是,由于他們對(duì)使用現(xiàn)代加密協(xié)議和監(jiān)視他們的網(wǎng)絡(luò)都有監(jiān)管要求,這使得這些網(wǎng)絡(luò)運(yùn)營(yíng)商處于一個(gè)尷尬的境地。
關(guān)于法規(guī)是否需要靜態(tài)密鑰,是否有其他方法可能同樣有效,以及為了相對(duì)較少的網(wǎng)絡(luò)而削弱整個(gè)互聯(lián)網(wǎng)的安全性是否是一個(gè)正確的解決方案,這已經(jīng)引起了很多爭(zhēng)議。事實(shí)上,仍然有可能在TLS 1.3中對(duì)流量進(jìn)行解密,但是用戶需要訪問(wèn)臨時(shí)密鑰才能這樣做,而且在設(shè)計(jì)上它們并不是長(zhǎng)久的。
在這一點(diǎn)上,TLS 1.3看起來(lái)并不會(huì)改變以適應(yīng)這些網(wǎng)絡(luò),但是有一些關(guān)于創(chuàng)建另一個(gè)協(xié)議的傳言,這個(gè)協(xié)議允許第三方觀察這些用例的情況,甚至更多。是否獲得人們的關(guān)注這還有待觀察。
QUIC
在HTTP/2的工作中, TCP很明顯具有相似的低效率。由于TCP是一個(gè)有序的傳輸協(xié)議,一個(gè)數(shù)據(jù)包的丟失可能會(huì)阻止其后面的緩沖區(qū)中的數(shù)據(jù)被傳送到應(yīng)用程序。對(duì)于多路復(fù)用協(xié)議,這可能在性能上有很大的不同。
QUIC試圖通過(guò)在UDP之上有效地重建TCP語(yǔ)義(以及一些HTTP / 2的流模型)來(lái)解決這個(gè)問(wèn)題。像HTTP/2一樣,它得益于谷歌公司的努力,現(xiàn)在被國(guó)際互聯(lián)網(wǎng)工程任務(wù)組(IETF)采用,最初的用例是HTTP-over-UDP,其目標(biāo)是在2018年底成為標(biāo)準(zhǔn)。但是,由于谷歌公司已經(jīng)在Chrome瀏覽器和其網(wǎng)站上應(yīng)用,目前已占互聯(lián)網(wǎng)流量的7%以上。
DOH
最新的變化是DOH(DNS over HTTP)。大量的研究表明,網(wǎng)絡(luò)通常使用DNS作為施加策略的手段(無(wú)論是代表網(wǎng)絡(luò)運(yùn)營(yíng)商還是更大的權(quán)力機(jī)構(gòu))。
以上已經(jīng)討論了使用加密來(lái)限制這種控制,但它有一個(gè)缺點(diǎn)(至少?gòu)哪承┙嵌葋?lái)看),有可能將它與其他業(yè)務(wù)區(qū)分開(kāi)來(lái);例如,通過(guò)使用其端口號(hào)來(lái)阻止訪問(wèn)。
DOH通過(guò)將DNS流量搭載到現(xiàn)有HTTP連接上來(lái)解決這個(gè)問(wèn)題,從而消除了任何鑒別器。希望阻止訪問(wèn)該DNS解析器的網(wǎng)絡(luò)也只能通過(guò)阻止訪問(wèn)該網(wǎng)站來(lái)實(shí)現(xiàn)。
網(wǎng)絡(luò)和用戶
除了避免僵化的愿望之外,這些變化也反映了網(wǎng)絡(luò)與用戶之間不斷變化的關(guān)系。長(zhǎng)久以來(lái),人們都認(rèn)為網(wǎng)絡(luò)總是仁慈的,至少是無(wú)私的,但現(xiàn)在已經(jīng)不是這樣了,這是由于無(wú)孔不入的監(jiān)控,而且還有遭遇Firesheep這樣的攻擊。
因此,互聯(lián)網(wǎng)用戶的整體需求與希望獲得一定數(shù)據(jù)流量的網(wǎng)絡(luò)之間的關(guān)系日益緊張。特別受影響的是那些想要對(duì)這些用戶施加政策的網(wǎng)絡(luò),例如企業(yè)網(wǎng)絡(luò)。
在某些情況下,他們可以通過(guò)在用戶的計(jì)算機(jī)上安裝軟件(或CA證書(shū)或?yàn)g覽器擴(kuò)展)來(lái)實(shí)現(xiàn)他們的目標(biāo)。但是,在網(wǎng)絡(luò)不擁有或無(wú)法訪問(wèn)計(jì)算機(jī)的情況下,這并不容易。例如BYOD已經(jīng)變得很普遍,物聯(lián)網(wǎng)設(shè)備很少有適當(dāng)?shù)目刂平涌凇?/p>
因此,圍繞IETF協(xié)議開(kāi)發(fā)的大量討論,觸及了企業(yè)和其他網(wǎng)絡(luò)互相競(jìng)爭(zhēng)的需求,以及整個(gè)互聯(lián)網(wǎng)的好處。
參與其中
從長(zhǎng)遠(yuǎn)來(lái)看,互聯(lián)網(wǎng)要做好,就需要為終端用戶提供價(jià)值,避免僵化,讓網(wǎng)絡(luò)有序運(yùn)行?,F(xiàn)在發(fā)生的變化需要滿足所有三個(gè)目標(biāo),但是人們需要來(lái)自網(wǎng)絡(luò)運(yùn)營(yíng)商的更多的投入。