《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 設(shè)計應(yīng)用 > IPv4向IPv6過渡場景分析
IPv4向IPv6過渡場景分析
孫瓊 江志峰 陳運清
來源: 電信網(wǎng)技術(shù)
摘要: 在今后一段時間內(nèi),IPv4和IPv6將長期共存,這種共存的趨勢將會隨著IPv4地址的進(jìn)一步消耗逐漸過渡為以IPv6為主導(dǎo)的情形。目前,隨著IPv4地址緊缺所導(dǎo)致的IPv4和IPv6的過渡共存場景主要包括以下幾個方面:
關(guān)鍵詞: 2.5G|3G IPv4 IPv6 過渡場景
Abstract:
Key words :

        在今后一段時間內(nèi),IPv4IPv6將長期共存,這種共存的趨勢將會隨著IPv4地址的進(jìn)一步消耗逐漸過渡為以IPv6為主導(dǎo)的情形。目前,隨著IPv4地址緊缺所導(dǎo)致的IPv4和IPv6的過渡共存場景主要包括以下幾個方面:
        (1)IPv4 NAT(Network Address Translator)及NAT444 IPv4的NAT解決方案是暫時緩解IPv4地址消耗的有效途徑,已被廣泛使用。NAT可以使用端口復(fù)用,這樣一個用戶(或一個單位、部門)獲得的惟一一個公網(wǎng)IP地址可以由多個用戶使用。
        在IPv4 NAT的基礎(chǔ)上,隨著IPv4地址的進(jìn)一步緊缺,用戶的公網(wǎng)地址也無法得到的情況下,運營商網(wǎng)絡(luò)也開始使用私用地址,這樣NAT的位置就由用戶終端設(shè)備(Customer Premises Equipment,CPE)側(cè)移到了接入?yún)R聚處,因此就出現(xiàn)了雙層NAT(見圖1)。在該方案增加了系統(tǒng)的復(fù)雜性,限制了較多應(yīng)用的部署與開展,具有可擴展性、安全性、端對端可靠性的問題。

                 
                  圖1  雙NAT過渡場景
         (2)純IPv6接入初期
        隨著IPv4地址消耗殆盡,此時用戶已無法得到IPv4地址,這時便出現(xiàn)了純IPv6接入的應(yīng)用場景,即用戶接入的網(wǎng)絡(luò)是純IPv6,而不支持IPv4。由于在此階段仍然存在著大量的IPv4應(yīng)用與服務(wù),因此IPv4與IPv6的共存階段具有以下兩個長尾特征:
         ●操作系統(tǒng)的長尾特征。雖然目前的主流操作系統(tǒng)(Windows XP,Vista,Linux等)都已經(jīng)能夠支持IPv6,但對純IPv6的支持還不夠。例如,XP尚不能在純IPv6環(huán)境中處理DNS請求。此外,一些IPv4的應(yīng)用無法很快升級到IPv6,一些電子設(shè)備目前也只能支持IPv4。因此,這就要求在純IPv6的接入環(huán)境中仍然能夠使用IPv4的應(yīng)用以及IPv4的操作系統(tǒng)。
         ●服務(wù)與內(nèi)容的長尾特征。目前IPv6的服務(wù)還比較少,這就要求在純IPv6的介入環(huán)境中仍然能夠保持IPv4服務(wù)的連通性。
        在本階段,IPv4與IPv6的共存機制包括已廣泛使用的IPv4 NAT(CGN,雙層NAT),IPv4應(yīng)用與服務(wù)以及IPv6應(yīng)用與服務(wù)(見圖2)。IPv6過渡初期的一個重要目標(biāo)就是保持IPv4的后項兼容性,使用戶仍然能夠?qū)Pv4的應(yīng)用接入純IPv6網(wǎng)絡(luò)中,這樣才能夠?qū)崿F(xiàn)IPv6的順利過渡。
                  圖2  純IPv6接入過渡初期場景
         (3)純IPv6接入中期
         在純IPv6的接入中期,隨著IPv6的進(jìn)一步發(fā)展,操作系統(tǒng)以及應(yīng)用程序?qū)Pv6的支持都有了較好的提升,因此用戶開始較多地轉(zhuǎn)向使用純IPv6的應(yīng)用,用戶端出現(xiàn)了較多的純IPv6的主機,而非雙棧或純IPv4的主機(見圖3)。在該階段,IPv6的服務(wù)還較為有限,大量IPv4的服務(wù)依然存在,因此用戶需要通過IPv6的應(yīng)用來訪問IPv4的服務(wù)。
                  圖3  純IPv6接入過渡中期景
          (4)IPv6普及發(fā)展階段
        在IPv6已較為普及,用戶及網(wǎng)絡(luò)側(cè)都已經(jīng)基本升級到純IPv6的環(huán)境時,此時還存在少量位于NAT后的IPv4服務(wù)。這個階段需要解決的問題是,在純IPv6的環(huán)境中訪問少量位于NAT后的IPv4服務(wù)(見圖4)。
             圖4  IPv6普及發(fā)展階段
        綜上所述,純IPv6接入場景是向IPv6過渡非常重要的應(yīng)用場景。尤其在IPv6的過渡初期,需要解決的主要問題在于保持IPv4的后向兼容性,使用戶能夠在IPv6的接入環(huán)境中無縫使用IPv4的應(yīng)用與服務(wù)。
        3  已有過渡技術(shù)
        迄今為止,已有的IPv4/v6過渡技術(shù)可以分為協(xié)議翻譯類和隧道類。其中,IETF的Behave工作組主要研究協(xié)議翻譯類的技術(shù),而Softwire工作組則主要研究隧道類的技術(shù)。
        3.1  協(xié)議翻譯類
        (1)技術(shù)原理
         IPv6過渡中的協(xié)議翻譯類技術(shù)是由IPv4的NAT技術(shù)發(fā)展而來的。在IPv4的NAT技術(shù)中,為了減少IPv4公網(wǎng)地址的消耗,NAT協(xié)議翻譯網(wǎng)關(guān)為私網(wǎng)IPv4地址和公網(wǎng)IPv4地址建立起映射關(guān)系,通過端口的復(fù)用技術(shù),從而達(dá)到一個公網(wǎng)地址可以由多個私網(wǎng)地址共享的效果。
        與此相對應(yīng),IPv6過渡中的協(xié)議翻譯類技術(shù)就是將IPv6數(shù)據(jù)包中的每個字段與IPv4數(shù)據(jù)包中的每個字段建立起一一映射的關(guān)系,從而在兩個網(wǎng)絡(luò)的邊緣實現(xiàn)數(shù)據(jù)報文的轉(zhuǎn)換。其應(yīng)用場景參見圖5。
                  圖5 協(xié)議翻譯機制的應(yīng)用場景
        在這里,通信雙方的主機需要明確本機在另一個網(wǎng)絡(luò)中的對應(yīng)地址。在上例中需明確以下兩組地址:
        ●PCA:主機IPv6地址與轉(zhuǎn)換的IPv4地址。
        ●PCB:主機IPv4地址與映射的IPv6地址。
        由于IPv4地址空間遠(yuǎn)遠(yuǎn)小于IPv6的地址空間,因此位于IPv4網(wǎng)絡(luò)中的主機可以通過加上IPv6前綴即可實現(xiàn)IPv4地址與IPv6地址的一一映射,但為了確定IPv6網(wǎng)絡(luò)中主機的IPv4地址則較為困難。由于IPv6的地址空間遠(yuǎn)大于IPv4的地址空間,因此只能通過縮小IPv6地址空間的方法與IPv4地址建立映射關(guān)系,或者通過建立映射表的方法與IPv4地址建立映射關(guān)系。
        (2)技術(shù)分類
        根據(jù)IPv6地址空間與IPv4地址空間映射的不同方法,可以將協(xié)議翻譯類技術(shù)分為有狀態(tài)協(xié)議翻譯和無狀態(tài)協(xié)議翻譯。其中,有狀態(tài)協(xié)議翻譯是通過建立映射表的方案,將任意IPv6地址與任意IPv4地址之間建立映射關(guān)系,而無狀態(tài)協(xié)議翻譯則是通過將IPv4地址內(nèi)嵌到IPv6地址中,實現(xiàn)無狀態(tài)地址翻譯。因此,無狀態(tài)協(xié)議翻譯僅能訪問具有特定格式IPv6地址的主機,而有狀態(tài)協(xié)議翻譯則能夠訪問任意地址格式的IPv6主機。
        現(xiàn)有協(xié)議翻譯技術(shù)已有很多不同的種類。其中,根據(jù)IPv6地址空間與IPv4地址空間映射的不同方法,可分為有狀態(tài)協(xié)議翻譯和無狀態(tài)協(xié)議翻譯。其中,有狀態(tài)協(xié)議翻譯(如NAT64,PNAT等)是通過建立映射表的方案,將任意IPv6地址與任意IPv4地址之間建立映射關(guān)系,而無狀態(tài)協(xié)議翻譯則是通過將IPv4地址內(nèi)嵌到IPv6地址中,實現(xiàn)無狀態(tài)地址翻譯。因此,無狀態(tài)協(xié)議翻譯(如IVI,DIVI等)僅能訪問具有特定格式IPv6地址的主機,而有狀態(tài)協(xié)議翻譯則能夠訪問任意地址格式的IPv6主機。
        此外,根據(jù)協(xié)議翻譯的位置,可以分為主機側(cè)協(xié)議翻譯、網(wǎng)絡(luò)側(cè)協(xié)議翻譯以及主機側(cè)和網(wǎng)絡(luò)側(cè)的協(xié)議翻譯。主機側(cè)協(xié)議翻譯(如BIS,BIA等)在主機中完成翻譯即可,完成端系統(tǒng)中應(yīng)用程序協(xié)議類型與網(wǎng)絡(luò)傳輸協(xié)議類型的不匹配,其應(yīng)用場景為4-6-6或6-4-4;網(wǎng)絡(luò)側(cè)協(xié)議翻譯(如NAT64,IVI,Socks64等)僅在網(wǎng)絡(luò)中部署協(xié)議翻譯網(wǎng)關(guān)即可,完成網(wǎng)絡(luò)兩側(cè)協(xié)議類型的不匹配,其應(yīng)用場景為6-6-4或4-4-6;而主機側(cè)和網(wǎng)絡(luò)中的兩次協(xié)議翻譯(如PNAT)可應(yīng)用于4-6-4和6-4-6的應(yīng)用場景。
        最后,根據(jù)協(xié)議翻譯技術(shù)的協(xié)議層次,可以包括網(wǎng)絡(luò)層協(xié)議翻譯(如NAT64,PNAT,IVI,BIS)、傳輸層協(xié)議翻譯(如TRT)以及應(yīng)用層協(xié)議翻譯(如BIA,Socks64等)。
        (3)典型的協(xié)議翻譯技術(shù)
        ●NAT64
        NAT64是有狀態(tài)的協(xié)議翻譯技術(shù),在網(wǎng)關(guān)中記錄了“IPv4地址+端口”與IPv6地址的映射表會話狀態(tài),是網(wǎng)絡(luò)層的協(xié)議翻譯技術(shù),其應(yīng)用場景為6-6-4。NAT64的提出實際是用于替代NAT-PT的,NAT64僅允許IPv6主動發(fā)起的連接,并通過將DNS-ALG的功能與NAT64網(wǎng)關(guān)的功能相分離,從而可以避免NAT-PT中一些與DNS-ALG相關(guān)的缺陷。
        NAT64能夠支持純IPv6主機與純IPv4主機的直接通信,接入網(wǎng)絡(luò)可以為純IPv6網(wǎng)絡(luò),無需更改主機側(cè)設(shè)備,并且其IPv6地址格式不受限。由于NAT64是一個有狀態(tài)的協(xié)議翻譯機制,因此具有一定的可擴展性問題和狀態(tài)同步問題,且需要處理ALG的相關(guān)問題。
        ●IVI
        IVI是無狀態(tài)協(xié)議翻譯技術(shù)。其中,1:1的IVI方式僅將IPv4地址內(nèi)嵌到IPv6地址中,因此會消耗過多的IPv4公網(wǎng)地址,此時協(xié)議翻譯網(wǎng)關(guān)僅需在網(wǎng)絡(luò)側(cè)部署即可;而1:N的IVI則通過將IPv4的地址和端口范圍同時內(nèi)嵌到IPv6地址中,從而實現(xiàn)1:N的地址復(fù)用,此時的協(xié)議翻譯網(wǎng)絡(luò)需要在用戶側(cè)和網(wǎng)絡(luò)側(cè)同時部署,用戶側(cè)僅實現(xiàn)端口的有狀態(tài)映射,而網(wǎng)絡(luò)側(cè)則可以實現(xiàn)無狀態(tài)地址映射。
        IVI能夠?qū)崿F(xiàn)網(wǎng)絡(luò)核心無狀態(tài)處理,報文轉(zhuǎn)發(fā)高效,實現(xiàn)簡單。由于IVI中需要將IPv4地址內(nèi)嵌到IPv6中,因此IPv6地址格式比較受限,在1:1的IVI中會消耗過多的IPv4地址,而在1:N的IVI中則又需要在用戶側(cè)有一定的更改,并且也需要處理ALG的相關(guān)問題。
        3.2  隧道類
        (1)技術(shù)原理
         隧道類技術(shù)是指將另外一個協(xié)議數(shù)據(jù)包的報頭直接封裝在原數(shù)據(jù)包報頭前,從而可以實現(xiàn)在不同協(xié)議的網(wǎng)絡(luò)上直接進(jìn)行傳輸。其應(yīng)用場景參見圖6。
                  圖6  隧道轉(zhuǎn)換實現(xiàn)原理
        在隧道類技術(shù)中,通過不同協(xié)議類型數(shù)據(jù)包的封裝和解封裝可以方便的實現(xiàn)數(shù)據(jù)包在不同協(xié)議類型網(wǎng)絡(luò)中的傳輸穿越。因此,隧道方式能夠較為方便地實現(xiàn)原有流量的承載。
        (2)技術(shù)分類
        ●在隧道類技術(shù)中,根據(jù)其穿越的不同網(wǎng)絡(luò)類型,又可以分為IPv6 over IPv4類隧道(圖6左側(cè))和IPv4 over  IPv6類隧道(圖6右側(cè))。其中,支持IPv6 over IPv4的隧道類型較多,包括已經(jīng)成為標(biāo)準(zhǔn)的6 to 4,6
over 4,ISATAP,TSP,Teredo,6PE等,而支持IPv4 over  IPv6的隧道類型目前基本還都處于草案階段,如DS-Lite,A+P,TSP等。
         ●根據(jù)隧道封裝的協(xié)議層次,又可以分為應(yīng)用層隧道、傳輸層隧道(TSP)以及網(wǎng)絡(luò)層隧道(DS-Lite,A+P等)。其中,應(yīng)用層隧道的隧道報頭通常包括以太頭,IP頭,TCP/UDP頭和應(yīng)用層的標(biāo)識頭;傳輸層隧道的隧道報頭通常包括以太頭,IP頭,TCP/UDP頭;而網(wǎng)絡(luò)層隧道的隧道報頭則通常包括以太頭和IP頭。
         ●針對隧道方式所應(yīng)用的不同網(wǎng)絡(luò)結(jié)構(gòu),又可以將隧道分為星型隧道和網(wǎng)狀型隧道。其中,星型隧道通常有一個集中控制器與多個客戶端建立一對一隧道,通常這類隧道可以應(yīng)用到接入網(wǎng)中,需具備NAT穿越的功能,并且能夠AAA認(rèn)證、用戶管理等;而網(wǎng)狀型隧道則不需要核心集中控制器來建立隧道,此時隧道的斷點具有自動發(fā)現(xiàn)、自動建立的功能,這類隧道通??蓱?yīng)用于骨干網(wǎng)中。兩種隧道的拓?fù)鋮⒁妶D7。
                  圖7  隧道轉(zhuǎn)換實現(xiàn)原理
         由于在本文中主要考慮接入網(wǎng)的IPv6過渡方案,因此主要考慮星型網(wǎng)絡(luò)下的隧道技術(shù)。
         (3)典型的隧道技術(shù)
          ●DS-Lite
         DS-Lite是一個網(wǎng)絡(luò)層的IPv4 over  IPv6的隧道,通過將IPv4流量封裝在IPv6隧道中進(jìn)行傳輸,接入網(wǎng)絡(luò)為IPv6單棧,可以使用IPv6地址對數(shù)據(jù)報文進(jìn)行惟一標(biāo)識,并且避免了CPE側(cè)的NAT轉(zhuǎn)換。DS-Lite僅在AFTR側(cè)做一次NAT轉(zhuǎn)換,對IPv6地址無格式限制。
         DS-Lite隧道方式取消了用戶CPE側(cè)的NAT轉(zhuǎn)換,從而實現(xiàn)了網(wǎng)絡(luò)中僅保留一次NAT轉(zhuǎn)換,簡化了IPv4地址的分配與管理,終端用戶可使用任意IPv4私網(wǎng)地址。該隧道建立的過程無需進(jìn)行協(xié)商,且接入網(wǎng)絡(luò)可以僅為純IPv6單棧。但DS-Lite也存在一定的局限性,例如DS-Lite必須對用戶側(cè)的CPE做一定的更改,在AFTR網(wǎng)關(guān)上需維護(hù)大量的NAT表項,具有一定的可擴展性問題和狀態(tài)的同步問題,并且無法支持由通信對端發(fā)起的連接。
        ●A+P
        A+P也是一個網(wǎng)絡(luò)層IPv4 over IPv6的隧道,采用端口靜態(tài)劃分的方式復(fù)用IPv4地址,將網(wǎng)絡(luò)核心側(cè)的NAT轉(zhuǎn)移到CPE側(cè),從而實現(xiàn)網(wǎng)絡(luò)核心側(cè)無狀態(tài)的數(shù)據(jù)轉(zhuǎn)發(fā)。在A+P中,將IPv4地址和端口范圍內(nèi)嵌到IPv6地址中,IPv6地址格式受限,且有特定前綴。
         A+P的方案可實現(xiàn)網(wǎng)絡(luò)核心無狀態(tài)轉(zhuǎn)換,并且可以復(fù)用IPv4地址。隧道可自動建立,無協(xié)商過程。但是其缺點在于一方面CPE需進(jìn)行一定的升級,并且IPv6地址格式有一定的限制。
         ●TSP
        TSP是基于隧道代理(Tunnel Broker)的一種信令協(xié)議,通過在兩個端點間進(jìn)行參數(shù)協(xié)商建立隧道,包括IPv4 over IPv6和IPv6 over IPv4兩種類型,隧道的層次也可以通過協(xié)商確定,包括網(wǎng)絡(luò)層和傳輸層UDP隧道。此時的IPv6地址為任意格式的地址,IPv4地址為公網(wǎng)地址。因此,若需要使用IPv4私有地址,則還需要額外增加NAT設(shè)備。
        3.3  地址復(fù)用技術(shù)
        地址共享機制可以分為兩種類型,一種是采用IPv4私網(wǎng)地址進(jìn)行地址共享(如CGN,DS-Lite等解決方案),此時需要引入運營級NAT,在不同網(wǎng)絡(luò)邊界處實現(xiàn)私網(wǎng)地址與公網(wǎng)地址的轉(zhuǎn)換與映射;另一類則是采用公網(wǎng)IPv4地址進(jìn)行地址共享,這類方案避免了運營級NAT轉(zhuǎn)換,通過劃分端口空間使得用戶能夠通過不同的端口空間來區(qū)分共享同一個公網(wǎng)IPv4地址,可以實現(xiàn)網(wǎng)絡(luò)核心側(cè)無狀態(tài)地址復(fù)用。
        4  結(jié)束語
        協(xié)議翻譯技術(shù)和隧道技術(shù)為兩種可應(yīng)用于不同場景的過渡技術(shù),兩個技術(shù)比較參見表1。
        表1  協(xié)議翻譯和隧道技術(shù)總結(jié)

        由表1可見,目前協(xié)議翻譯技術(shù)比較適用于IPv6?àIPv4和IPv4?àIPv6的場景,而隧道技術(shù)則比較適用于IPv4?àIPv4和IPv6?àIPv6的場景。協(xié)議翻譯技術(shù)的優(yōu)點在于部署簡單和應(yīng)用場景多樣,缺點在于實現(xiàn)的復(fù)雜度較高。與此相對應(yīng),隧道技術(shù)實現(xiàn)較為簡單,但是其缺點在于應(yīng)用場景較為單一,且需要在用戶側(cè)和網(wǎng)絡(luò)側(cè)均部署相應(yīng)的設(shè)備。因此,可以考慮將協(xié)議翻譯和隧道技術(shù)相結(jié)合,從而可以發(fā)揮兩者的優(yōu)勢,實現(xiàn)多場景的自適應(yīng)選擇和適配。
此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。