IPv6部署帶來了哪一些現(xiàn)實問題
國內(nèi)掀起了IPv6網(wǎng)絡(luò)改造的熱潮,從運營商到互聯(lián)網(wǎng),從企業(yè)到個人,都要將IPv6的網(wǎng)絡(luò)改造付諸于行動,不少企業(yè)都立了軍令狀,讓IPv6跑起來。不過,IPv6的口號喊了這么多年,一直沒有什么聲響,大家都沒有改造的意愿,因為從眼前看IPv6就是一個費錢費力又得不到更多好處的事情,IPv4地址是不夠用,但也有一些延緩的變通技術(shù)。5G、物聯(lián)網(wǎng)興起來后,對IPv6的需求迫切了,IPv4再怎么節(jié)省也無法滿足物聯(lián)網(wǎng)的未來部署,這推動著所有的網(wǎng)絡(luò)運營商必須要進行IPv6改造。改造意愿是一方面,技術(shù)部署也存在不少阻力,IPv4網(wǎng)絡(luò)運行多年,各種網(wǎng)絡(luò)聯(lián)接和應(yīng)用盤根錯節(jié),極其復(fù)雜,這時再將IPv6納入進來,網(wǎng)絡(luò)就更復(fù)雜了,部署IPv6面臨著很多現(xiàn)實問題。
首先,就是轉(zhuǎn)發(fā)表項容量的問題
網(wǎng)絡(luò)設(shè)備轉(zhuǎn)發(fā)芯片為實現(xiàn)簡單,基本都是采用IPv4和IPv6公用轉(zhuǎn)發(fā)表的方式,一條IPv6占用兩條IPv4表項或者四條IPv4表項。IPv4存量網(wǎng)絡(luò)規(guī)模太大,不可能用IPv6將IPv4一下子替掉,就需要讓兩者在一個網(wǎng)絡(luò)中,甚至一臺設(shè)備上共存,IPv6要占用原有IPv4資源,IPv4和IPv6共存,IPv6要占用更多的資源,會使得IP轉(zhuǎn)發(fā)表資源急劇下降。網(wǎng)絡(luò)在設(shè)計之初,雖然IPv6作為網(wǎng)絡(luò)設(shè)備的基本功能都要求支持,但對容量并沒有明確要求,實際部署時IPv6功能也是擺設(shè),沒有實際用,現(xiàn)在真要用了,就要認真考慮容量問題了。比如:設(shè)備若IPv4轉(zhuǎn)發(fā)表是16K,則只能支持IPv6轉(zhuǎn)發(fā)表是8K,如果是兩者公用,那么應(yīng)該是IPv4+2*IPv6=16K。實際應(yīng)用時可用轉(zhuǎn)發(fā)表項數(shù)量會更少,這是因為IPv4和IPv6的IP地址長度并不相同,IPv6是IPv4的四倍,有128個BIT,長度差異導(dǎo)致兩者向同一個IP轉(zhuǎn)發(fā)表下發(fā)時,極其容易出現(xiàn)HASH沖突,從而下不去,報資源不足。實際應(yīng)用中,這種情況實際可用的容量也就達到原來的一半,16K的資源,總共也就下發(fā)8K左右,即IPv4+2*IPv6=8K,之后出現(xiàn)HASH沖突的概率大大增加了。顯然,若是現(xiàn)網(wǎng)中設(shè)備的IPv4表項已經(jīng)使用的比較多,就不能再啟用IPv6了,轉(zhuǎn)發(fā)表資源會快速下降,出現(xiàn)不足。
其次,是IPv4與IPv6互通問題
部署IPv6不能將原來的IPv4網(wǎng)絡(luò)推倒重建,IPv6部署是循序漸進的過程,這就要求技術(shù)上處理好舊的IPv4網(wǎng)絡(luò)與新的IPv6網(wǎng)絡(luò)兼容性,尤其是兩者互通問題,有的網(wǎng)絡(luò)終端是IPv4的,網(wǎng)絡(luò)接入是IPv4的,核心部署是IPv6的,也有的網(wǎng)絡(luò)終端是IPv6的,網(wǎng)絡(luò)部分又是IPv4的,這就要解決互通問題。以我們最熟悉的QQ為例,如果IPv4和IPv6用戶不能互相通信將是非常糟糕的情況。顯然,大家已經(jīng)為此設(shè)計了一些互通技術(shù):雙棧、隧道和地址轉(zhuǎn)換三種。雙棧技術(shù)本身不解決網(wǎng)絡(luò)互聯(lián)互通,只是要求所有主機都支持兩種IP協(xié)議,這樣對用戶而言就是互通了,通過主機上的協(xié)議切換從而與兩個網(wǎng)絡(luò)的用戶實現(xiàn)互通,但這樣無法做到無縫切換,要同時與IPv4、IPv6網(wǎng)絡(luò)都要實時互通技術(shù)上就存在困難,只能將主機的網(wǎng)卡來回切換,分別與兩個網(wǎng)絡(luò)實現(xiàn)互通。隧道技術(shù)可以解決雙向互通,但還是需要強大的隧道服務(wù)器,隧道的帶寬是一定限制,另外隧道其實是通過雙層IP頭實現(xiàn)的,這樣增加了報文的長度,增加了占用帶寬,浪費掉了部分帶寬資源。地址轉(zhuǎn)換技術(shù)方面曾經(jīng)有一個標準草案NAT-PT,但已被IETF放棄了。另外還有法國運營商Comcast提出的DS-Lite,國內(nèi)CERNET2團隊提出的IVI,這些方案都是將隧道和地址轉(zhuǎn)換結(jié)合起來,可能更適合實現(xiàn)過渡的目的,但這些都大大增加了網(wǎng)絡(luò)開銷,對網(wǎng)絡(luò)帶寬是個考驗。顯然,這些互連互通技術(shù)還不能讓人滿意,只能作為過渡技術(shù)臨時被采用。
第三,是兩張網(wǎng)運維的問題
在兩張不同的網(wǎng)絡(luò)上,虛擬機如何遷移,遷移過程中的運維管理問題也需要考慮。我們面臨著要同時運維IPv6和IPv4兩張網(wǎng)絡(luò),運維工作量是原來的兩倍還不止,IPv6的技術(shù)特點和IPv4并不是簡單的地址加長,在協(xié)議處理、安全保護、狀態(tài)計算等方面都有差異,所以運維的知識還要補充和學(xué)習(xí),甚至要引入一些IPv6的技術(shù)專才,這些都給運維的工作和資金帶來壓力。同時,兩張網(wǎng)還不是隔離的,在同一臺設(shè)備上都要共存,還要考慮兼容問題,相同的命令看IPv4轉(zhuǎn)發(fā)表是一個結(jié)果,看IPv6又是一個結(jié)果,將兩者放在一起看又可能是另外的結(jié)果,如何分析,都需要積累經(jīng)驗。原來運維的工具,顯然要將IPv6網(wǎng)路部分也要納入,但很多時候這些信息并不能分開統(tǒng)計與分析,比如端口流量,無法區(qū)分是IPv4流量還是IPv6流量,流量圖上看出是哪部分流量,出了問題自然也看不出是IPv4流量出了問題,還是IPv6流量出了問題,只能通過其它方面的表現(xiàn)來確定。在運維可視化、自動化工具方面都要考慮IPv6部分,尤其是兩種網(wǎng)絡(luò)共存的情況,如何顯示,哪個內(nèi)容分開現(xiàn)實,哪些內(nèi)容又要匯總在一起來顯示,這里都還不能用技術(shù)來解決。
當(dāng)然還遠不止這幾個方面的問題,IPv6沒有廣播,只有組播,要占用不少的組播轉(zhuǎn)發(fā)表項,設(shè)備能否滿足,IPv6地址長,設(shè)備ACL匹配能力是否夠,匹配到IPv6地址比較深入的內(nèi)容等等,這些都是IPv6在實際網(wǎng)絡(luò)部署時面臨的現(xiàn)實問題。IPv6的部署刻不容緩,很多網(wǎng)絡(luò)已經(jīng)陸續(xù)上了IPv6,但真正能有IPv6流量跑起來的又有幾個網(wǎng)絡(luò)呢,這些擺在大家面前的現(xiàn)實問題若不能一一很好的解決,IPv6就算是已在所有設(shè)備上都啟用了,那IPv6也不過是一種擺設(shè),空載跑跑而已,很難形成氣候,IPv6真正替換IPv4網(wǎng)絡(luò)還有很長的路要走。