面對(duì)當(dāng)前IETF關(guān)注的互聯(lián)網(wǎng)體系結(jié)構(gòu)演變及其對(duì)IP地址角色變化的影響,日前,APNIC的首席科學(xué)家杰夫·休斯頓發(fā)文進(jìn)行分析。他表示,作為服務(wù)于亞太地區(qū)的區(qū)域互聯(lián)網(wǎng)注冊(cè)機(jī)構(gòu),APNIC負(fù)責(zé)為亞太地區(qū)的互聯(lián)網(wǎng)網(wǎng)絡(luò)運(yùn)營(yíng)商提供互聯(lián)網(wǎng)公有IP地址的分配服務(wù),以保證地址的唯一性,因此這個(gè)話題正是APNIC深感興趣的。
休斯頓指出,無(wú)論是過(guò)去的信件、電話,還是如今的互聯(lián)網(wǎng),在大多數(shù)通信系統(tǒng)中,各種形式的地址都有著一致的屬性。地址以及我們使用地址的方式,是任何網(wǎng)絡(luò)體系結(jié)構(gòu)的重要組成部分,互聯(lián)網(wǎng)也并不例外。
在任何尋址方案中,地址統(tǒng)一的屬性都包含身份、位置和可達(dá)性,而身份與唯一性又總是息息相關(guān)。理論上,一個(gè)有用的尋址方案為每個(gè)實(shí)體分配一個(gè)唯一的地址,否則就需要采取額外的措施來(lái)解決多個(gè)實(shí)體共享同一地址所產(chǎn)生的沖突。
嚴(yán)格來(lái)講,IP地址并不識(shí)別計(jì)算機(jī),它們標(biāo)識(shí)計(jì)算機(jī)(或IP協(xié)議棧)與網(wǎng)絡(luò)的連接點(diǎn)。如果一臺(tái)計(jì)算機(jī)有多個(gè)聯(lián)網(wǎng)的網(wǎng)絡(luò)接口,那么它將擁有多個(gè)IP地址。
理論上,具有特定目的IP地址的數(shù)據(jù)包將被路由到匹配該IP地址的網(wǎng)絡(luò)接口。發(fā)出的數(shù)據(jù)包也受到類似的約束,因?yàn)閿?shù)據(jù)包的源IP地址將對(duì)應(yīng)配置該IP地址的網(wǎng)絡(luò)接口。
大多數(shù)尋址系統(tǒng)都試圖在作為標(biāo)識(shí)的地址和具有位置屬性的地址之間執(zhí)行某種形式的關(guān)聯(lián)。IP地址被分為網(wǎng)絡(luò)部分和主機(jī)部分。連接到同一網(wǎng)絡(luò)中的所有主機(jī),其IP地址共享相同的網(wǎng)絡(luò)前綴,并且只在主機(jī)部分有所不同。在IPv4中,人們后來(lái)允許該網(wǎng)絡(luò)標(biāo)識(shí)符分界點(diǎn)是可變的;在IPv6中,大部分情況下則為固定模式,其中主機(jī)標(biāo)識(shí)符占用低64位,網(wǎng)絡(luò)部分占用高64位。因此,每個(gè)IP地址都包含相連的網(wǎng)絡(luò)標(biāo)識(shí)符和主機(jī)標(biāo)識(shí)符,即位置和身份。
大多數(shù)尋址系統(tǒng)都試圖在作為標(biāo)識(shí)的地址和具有位置屬性的地址之間執(zhí)行某種形式的關(guān)聯(lián)。
最后,地址可以包含某種形式的可達(dá)性信息,指示網(wǎng)絡(luò)如何建立從一個(gè)連接實(shí)體到另一個(gè)連接實(shí)體的通信。這可以用于設(shè)置網(wǎng)絡(luò)狀態(tài),在雙方之間創(chuàng)建某種形式的虛電路,從而允許后續(xù)業(yè)務(wù)沿用該電路的狀態(tài)。在無(wú)狀態(tài)分組交換網(wǎng)絡(luò)中,地址信息被加載到每個(gè)網(wǎng)絡(luò)元件中,因此允許每個(gè)分組以獨(dú)立于以往通過(guò)網(wǎng)絡(luò)的其他分組的處理方式通過(guò)網(wǎng)絡(luò)。
經(jīng)典的互聯(lián)網(wǎng)體系結(jié)構(gòu)使用IP地址作為單一的令牌來(lái)支持三種功能,即IP地址旨在充當(dāng)端點(diǎn)標(biāo)識(shí)符(身份)、定位器(位置)以及通知網(wǎng)絡(luò)轉(zhuǎn)發(fā)數(shù)據(jù)包決策的方式(可達(dá)性),將數(shù)據(jù)包傳遞到其預(yù)期目的地。
這種將不同角色組合到一個(gè)地址中的做法,經(jīng)常在不同程度上被描述為互聯(lián)網(wǎng)體系結(jié)構(gòu)的一個(gè)關(guān)鍵要素,使網(wǎng)絡(luò)具有很高的性價(jià)比。這種做法也常被描述為一種“語(yǔ)義過(guò)載”的情況,然而語(yǔ)義過(guò)載在某些情況下是有問(wèn)題的,比如在移動(dòng)網(wǎng)絡(luò)中就需要分離位置和身份的關(guān)聯(lián)。
休斯頓表示,IP地址這種把身份和位置相關(guān)聯(lián)的語(yǔ)義過(guò)載情況,在早期的互聯(lián)網(wǎng)體系結(jié)構(gòu)中并不是重大缺陷,直到移動(dòng)網(wǎng)絡(luò)開(kāi)始對(duì)該行業(yè)產(chǎn)生難以置信的影響。
他提到,歷史上創(chuàng)建“全I(xiàn)P”移動(dòng)框架(Mobile IP)的努力由于缺乏各方的廣泛支持在市場(chǎng)上徹底失敗了,該框架允許移動(dòng)設(shè)備可以在網(wǎng)絡(luò)中漫游,同時(shí)仍保持其標(biāo)識(shí)身份的“主”IP地址。
在目前較為務(wù)實(shí)且經(jīng)過(guò)權(quán)衡的方案中,設(shè)備可以在移動(dòng)網(wǎng)絡(luò)內(nèi)部利用電路交換技術(shù),在不同的接入點(diǎn)間漫游時(shí)保持固定的IP地址。但在不同的運(yùn)營(yíng)商之間漫游時(shí),則需要為設(shè)備分配一個(gè)新的IP地址,并且需要重新建立上層協(xié)議的關(guān)聯(lián)??傮w來(lái)說(shuō),用戶已經(jīng)接受了這些限制,而且實(shí)際上也很少需要完全的無(wú)縫漫游,對(duì)于那些確有需求的人來(lái)說(shuō),解決方案則是使用隧道或各種形式的VPN。
地址作為身份令牌的更深層含義是IP地址與設(shè)備的唯一關(guān)聯(lián)性。這在大型主機(jī)共享計(jì)算機(jī)時(shí)代是完全合理的,但隨著計(jì)算平臺(tái)變得更小,個(gè)人計(jì)算機(jī)用戶的個(gè)性化程度更高,以及當(dāng)大量個(gè)人移動(dòng)設(shè)備接入互聯(lián)網(wǎng)時(shí),其缺陷開(kāi)始逐漸顯現(xiàn)。在20世紀(jì)80年代,32位的地址空間看起來(lái)似乎很廣闊,然而到了本世紀(jì)初,這個(gè)空間卻已然擁擠不堪。
休斯頓認(rèn)為,當(dāng)網(wǎng)絡(luò)運(yùn)營(yíng)商開(kāi)始通過(guò)撥號(hào)為消費(fèi)者提供上網(wǎng)服務(wù)時(shí),互聯(lián)網(wǎng)就已經(jīng)走上了重構(gòu)IP地址角色的道路。
客戶通過(guò)電話建立了連接,作為會(huì)話建立的一部分,客戶在通話的另一端向運(yùn)營(yíng)商出示了他們的登錄憑證,并獲得一個(gè)IP地址,以便在接下來(lái)的會(huì)話中使用。
客戶端并沒(méi)有為其網(wǎng)絡(luò)預(yù)先分配的IP地址范圍,在會(huì)話期間,用戶會(huì)獲得一個(gè)IP地址。通過(guò)這種方式,人們引入了分時(shí)地址概念,即用戶得到的IP地址在連接的生命周期中是暫時(shí)性的。
隨后,專家們通過(guò)網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT)又引入了基于傳輸層端口地址共享的概念,即若干本地設(shè)備共享單一地址。在休斯頓看來(lái),采用這種模式的主要驅(qū)動(dòng)因素并不是IPv4地址短缺,而是從網(wǎng)絡(luò)運(yùn)營(yíng)商到客戶的成本轉(zhuǎn)移問(wèn)題。從運(yùn)營(yíng)商的角度來(lái)看,采用共享地址方式是因?yàn)楫?dāng)時(shí)這樣做成本比較低。運(yùn)營(yíng)商對(duì)地址池的需求隨著需要同時(shí)在線的設(shè)備的增加而擴(kuò)展,但這個(gè)數(shù)字可能遠(yuǎn)小于運(yùn)營(yíng)商的用戶總數(shù)。同時(shí),地址管理的相關(guān)流程也能夠通過(guò)運(yùn)營(yíng)商的訪問(wèn)控制、身份驗(yàn)證和計(jì)費(fèi)系統(tǒng)來(lái)完成。
與此同時(shí),間歇性聯(lián)網(wǎng)設(shè)備也被納入互聯(lián)網(wǎng)模型。由于它們很多時(shí)候是不可訪問(wèn)的,因而專家們考慮將互聯(lián)網(wǎng)的設(shè)備劃分為客戶機(jī)和服務(wù)器??蛻魴C(jī)可以對(duì)服務(wù)器發(fā)起連接,但不能對(duì)其它客戶機(jī)發(fā)起連接。因此,除了訪問(wèn)憑據(jù)之外,客戶機(jī)并不需要持久性的網(wǎng)絡(luò)標(biāo)識(shí),人們可以在多個(gè)客戶端之間共享IP地址。
在90年代初,未分配的IPv4地址池趨于耗盡,IPv6開(kāi)始設(shè)計(jì)。IPv6的設(shè)計(jì)使用由IETF主導(dǎo)的“指令和控制”的機(jī)制,它試圖預(yù)測(cè)未來(lái)的行業(yè)需求,并創(chuàng)造出能夠滿足這些需求的技術(shù)。但另一方面,整個(gè)行業(yè)卻正遭到不受控的升級(jí)需求與降低服務(wù)成本需求這兩個(gè)迫切需求的驅(qū)動(dòng)。
他表示,分時(shí)地址的方案務(wù)實(shí)而廉價(jià),且可由單個(gè)網(wǎng)絡(luò)運(yùn)營(yíng)商執(zhí)行,而不必與任何其他組織協(xié)調(diào)行動(dòng)。然而,IETF并不喜歡網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT),因?yàn)轫攲釉O(shè)計(jì)者希望使用更優(yōu)化的解決方案;但運(yùn)營(yíng)商非常喜歡網(wǎng)絡(luò)地址轉(zhuǎn)換(NAT),因?yàn)樗碇环N成本更低的方法。
休斯頓認(rèn)為,這種對(duì)地址角色的重構(gòu)在當(dāng)時(shí)并不是一個(gè)慎重的過(guò)程,而是行業(yè)對(duì)形勢(shì)做出反應(yīng)的結(jié)果。在他看來(lái),在一個(gè)監(jiān)管寬松并以市場(chǎng)為基礎(chǔ)的領(lǐng)域中,這是唯一的驅(qū)動(dòng)因素。
IPv6是對(duì)互聯(lián)網(wǎng)體系結(jié)構(gòu)原始地址語(yǔ)義的回歸,并在此過(guò)程中進(jìn)行了一些細(xì)微調(diào)整。按照EUI-48以太網(wǎng)MAC地址的方式,IPv6擁有的128位地址有足夠的空間,人們可以使用其中64位為目前和未來(lái)全世界每一個(gè)主機(jī)接口分配唯一的標(biāo)識(shí)。因此,IP地址的主機(jī)標(biāo)識(shí)符部分不僅在網(wǎng)絡(luò)環(huán)境中是唯一的,且在任何意義上都是唯一的,就像單個(gè)MAC地址是唯一的一樣。
然而,當(dāng)時(shí)互聯(lián)網(wǎng)面臨的不僅僅是IPv4地址即將耗盡的前景,更為緊迫的問(wèn)題是如何擴(kuò)大網(wǎng)絡(luò)基礎(chǔ)設(shè)施的規(guī)模,以應(yīng)對(duì)不斷升級(jí)的需求。不僅互聯(lián)網(wǎng)上連接的客戶端數(shù)量以指數(shù)級(jí)速度增長(zhǎng),每個(gè)客戶端所需服務(wù)的規(guī)模也在以爆炸性速度增長(zhǎng),從1995年到2010年的15年間,網(wǎng)絡(luò)擴(kuò)張了10億倍。
不過(guò)休斯頓認(rèn)為,這可能并非一定要通過(guò)部署IPv6來(lái)解決。業(yè)界已非常適應(yīng)將網(wǎng)絡(luò)劃分為客戶機(jī)和服務(wù)器的網(wǎng)絡(luò)體系結(jié)構(gòu),雖然服務(wù)器可能需要一個(gè)穩(wěn)定的IP地址作為連接的端點(diǎn),但客戶機(jī)在沒(méi)有靜態(tài)IP地址的情況下也能順利工作。
此外,服務(wù)架構(gòu)也在發(fā)生變化,應(yīng)用程序在初始交換中已經(jīng)包括服務(wù)器的標(biāo)識(shí),例如,在安全傳輸層協(xié)議(TLS)中包含服務(wù)名稱指示字段(SNI),在HTTP協(xié)議的交互處理中包括服務(wù)器名稱。這意味著特定的服務(wù)標(biāo)識(shí)不再唯一地綁定到單個(gè)IP地址,不同的服務(wù)可以由使用單個(gè)IP地址的服務(wù)器提供,一個(gè)特定的服務(wù)也可以復(fù)制到多個(gè)服務(wù)器上,每個(gè)服務(wù)器都有不同的IP地址。
他表示,IPv6已經(jīng)提出20多年了,然而,在這期間,互聯(lián)網(wǎng)本身并沒(méi)有停滯不前,而是為解決上述問(wèn)題發(fā)生了根本性變化。這些變化對(duì)IP地址的作用產(chǎn)生了深遠(yuǎn)的影響。
休斯頓認(rèn)為,今天的互聯(lián)網(wǎng)是由內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)及其相關(guān)“云”主導(dǎo)的互聯(lián)網(wǎng)。如果把視頻流數(shù)據(jù)考慮在內(nèi),在向終端客戶交付的所有數(shù)據(jù)中,有大約70%到90%為視頻流。此外,企業(yè)網(wǎng)絡(luò)的需求似乎也正在演變?yōu)槭褂门cCDN類似的云服務(wù)。疫情期間,居家辦公對(duì)于網(wǎng)絡(luò)的需求,也加速了企業(yè)計(jì)算向各種形式的云服務(wù)的轉(zhuǎn)變。因而,如今公共互聯(lián)網(wǎng)的基礎(chǔ)設(shè)施正在被邊緣化和私有化。
休斯頓表示,“將互聯(lián)網(wǎng)視為交付某種服務(wù)的平臺(tái),其作用是將客戶需求傳送到所需服務(wù)的門(mén)戶”這種網(wǎng)絡(luò)模型存在一個(gè)基本的謬誤,即計(jì)算和存儲(chǔ)成本高昂,而網(wǎng)絡(luò)傳輸卻豐富且廉價(jià)。但事實(shí)上,如今計(jì)算和存儲(chǔ)是豐富而廉價(jià)的。基于此,CDN消除了通信中的距離,即通過(guò)復(fù)制和分發(fā)內(nèi)容,將服務(wù)直接帶到消費(fèi)者面前,從而解決了遠(yuǎn)程訪問(wèn)的成本和性能問(wèn)題。
在休斯頓看來(lái),從客戶機(jī)到服務(wù)器之間距離最短的網(wǎng)絡(luò)才是更快、更便宜的網(wǎng)絡(luò),CDN因而帶來(lái)了更快、更便宜和更靈活的性能。因此,公共互聯(lián)網(wǎng)的規(guī)模已經(jīng)逐步縮減到最后一英里的直徑,即接入網(wǎng)的范圍,原因很簡(jiǎn)單——這樣更便宜。
回到本文的中心,關(guān)于地址角色的變化,休斯頓指出,人們還需要全球唯一的IP地址,是因?yàn)樵摰刂返奈ㄒ荒康氖窃诒镜谻DN的服務(wù)范圍內(nèi)將自己與其他客戶區(qū)分開(kāi)來(lái)。
他認(rèn)為,隨著基于豐富計(jì)算和存儲(chǔ)資源的CDN的發(fā)展,越來(lái)越多的資源會(huì)更加接近終端客戶,而網(wǎng)絡(luò)基礎(chǔ)設(shè)施中IP地址全球唯一性的基本價(jià)值也將越來(lái)越難以量化。
休斯頓表示,沉沒(méi)成本是影響當(dāng)今網(wǎng)絡(luò)體系結(jié)構(gòu)變化的另一個(gè)因素,沒(méi)人愿意花錢(qián)去升級(jí)現(xiàn)有的公共基礎(chǔ)設(shè)施,因此想改變網(wǎng)絡(luò)的人只能在現(xiàn)有基礎(chǔ)設(shè)施的周圍、上層和隧道中進(jìn)行部署。他認(rèn)為,在這個(gè)監(jiān)管寬松的世界,零散的、缺乏協(xié)調(diào)的行為總是占據(jù)主導(dǎo)地位,因而通過(guò)協(xié)調(diào)和統(tǒng)籌來(lái)改進(jìn)和提升公共基礎(chǔ)設(shè)施是行不通的。
雖然專家們已經(jīng)在網(wǎng)絡(luò)中建立了一個(gè)基于應(yīng)用程序的封裝結(jié)構(gòu),巧妙地規(guī)避了整個(gè)基礎(chǔ)設(shè)施的更新問(wèn)題,但20多年來(lái),IPv6一直在與現(xiàn)有基礎(chǔ)設(shè)施的沉沒(méi)成本作斗爭(zhēng),而QUIC、BBR、SVCB和HTTPS以及類似的應(yīng)用層技術(shù)急劇崛起,則再次證明了應(yīng)用程序世界對(duì)現(xiàn)有基礎(chǔ)設(shè)施的極端厭惡。
因此,休斯頓指出,也許問(wèn)題不再是關(guān)于向IPv6的過(guò)渡,而是與服務(wù)和應(yīng)用的世界更相關(guān),以及,應(yīng)用程序如何盡可能以隔離底層基礎(chǔ)設(shè)施的方式來(lái)創(chuàng)建自己的環(huán)境?在他看來(lái),這和幾十年前IP基于無(wú)狀態(tài)分組轉(zhuǎn)發(fā)機(jī)理打敗電路交換電話網(wǎng)的故事簡(jiǎn)直如出一轍。
他表示,現(xiàn)在,人們似乎只把IP地址當(dāng)作臨時(shí)的會(huì)話令牌,把所有繁重的服務(wù)標(biāo)識(shí)工作都交給了域名系統(tǒng)。人們可能正在訪問(wèn)相同的服務(wù),卻可能使用著完全不同的IP地址來(lái)訪問(wèn),或者人們可以在不同時(shí)間訪問(wèn)同一服務(wù),但每次都使用不同的地址。而在更大的網(wǎng)絡(luò)中,終端客戶看到的是一個(gè)臨時(shí)的NAT管理綁定到公共地址,可能會(huì)被數(shù)百甚至數(shù)千人共享。
并且,甚至這種描述也在改變。QUIC在加密封裝中使用會(huì)話令牌,使IP地址與單個(gè)會(huì)話的綁定變得更加流暢,因?yàn)橥粋€(gè)QUIC會(huì)話可以在單個(gè)會(huì)話中靈活地進(jìn)行地址綁定。
因此,休斯頓認(rèn)為,如今的地址可能只是一個(gè)短暫的傳輸令牌,它將一個(gè)數(shù)據(jù)包流與另一個(gè)數(shù)據(jù)包流區(qū)分開(kāi)來(lái),在語(yǔ)義上幾乎沒(méi)有什么意義。在他看來(lái),現(xiàn)今維系互聯(lián)網(wǎng)的并非IP地址和路由,而是DNS和通用命名系統(tǒng)。