徐貴寶
——IPv6地址結(jié)構(gòu)體系研究的進(jìn)展與地址分配策略
一、引言
下一代網(wǎng)絡(luò)(NGN)是以IP為中心,支持語音、數(shù)據(jù)和多媒體業(yè)務(wù)的全業(yè)務(wù)網(wǎng)絡(luò)。因此,IP協(xié)議的研究對(duì)下一代網(wǎng)絡(luò)的發(fā)展至關(guān)重要。然而,IPV4已經(jīng)很難獨(dú)自擔(dān)當(dāng)起支撐下一代網(wǎng)絡(luò)發(fā)展的重任。相對(duì)于IPv4而言,IPv6改進(jìn)了許多功能,如單播和組播地址空間、任意廣播地址、分層路由的集體尋址等。通過這些改進(jìn),IPv6擴(kuò)大了地址空間,提高了網(wǎng)絡(luò)的整體吞吐量,改善了服務(wù)質(zhì)量和安全性,增強(qiáng)了對(duì)即插即用和移動(dòng)性的支持,更好地實(shí)現(xiàn)了多播功能,從而使IPv6成為下一代網(wǎng)絡(luò)的基礎(chǔ)。目前,IETF及相關(guān)機(jī)構(gòu)正在努力完善IPv6地址結(jié)構(gòu)體系和地址分配策略,使之能更好地為下一代網(wǎng)絡(luò)服務(wù)。
二、IPv6地址結(jié)構(gòu)體系研究的進(jìn)展
RFC3513是IETF最近公布的IPv6地址結(jié)構(gòu)體系,該體系取消了早期公布的RFC2373。雖然在RFC3513中保留了RFC2373的部分內(nèi)容,IPv6地址仍分為單播、任播、組播三種類型,地址和地址前綴的表示方法也未變,但在其它許多方面作了重大調(diào)整。另外,IETF還在RFC3587公布了新的IPv6全球單播地址格式,并取消了RFC2374。
1.大大擴(kuò)展了全球單播地址空間
在RFC3513中,IETF對(duì)IPv6的地址類型及其所占地址空間的比重進(jìn)行了重新調(diào)整,調(diào)整的結(jié)果如表1所示。
表1 IPv6的地址類型及其所占地址空間的比重
地址類型
二進(jìn)制前綴
IPv6符號(hào)
占地址空間的比重
不確定型
00…0(128位)
∷/128
1/2128
環(huán)回
00…1(128位)
∷1/128
1/2128
組播
11111111
FF00∷/8
1/256
本地鏈路單播
1111111010
FF80∷/10
1/1024
本地站點(diǎn)單播
1111111011
FFCO∷/10
1/1024
全球單播
(所有其他)
通過與RFC2373對(duì)比可知,RFC3513取消了為NSAP和IPX等保留的地址,將原來的保留地址全部劃入了全球單播地址的行列,從而大大擴(kuò)展了全球單播地址的空間。
2.給出了新的全球單播地址格式
RFC3513給出了新的IPv6全球單播地址通用格式,見圖1。
n bits
m bits
128-n-m bits
全球路由前綴
子網(wǎng)ID
接口ID
圖1 新的IPv6全球單播地址的通用格式
在圖1中,全球路由前綴是分配給站點(diǎn)(一組子網(wǎng)/鏈接)的一個(gè)典型層次結(jié)構(gòu)值,子網(wǎng)ID是一個(gè)站點(diǎn)內(nèi)子網(wǎng)的標(biāo)識(shí)。全球路由前綴由RIR和ISP設(shè)計(jì)為分層結(jié)構(gòu),子網(wǎng)域由站點(diǎn)管理員設(shè)計(jì)為分層結(jié)構(gòu)。在RFC3513中還刪除了格式前綴(FP)這個(gè)術(shù)語,以保證執(zhí)行簡便,而不需要掌握任何有全球單播格式前綴的知識(shí)。
由于RFC3513要求所有的單播地址(除了以二進(jìn)制00O開頭的地址外)有64位接口ID并具有改進(jìn)EUI-64格式的結(jié)構(gòu)(以二進(jìn)制000開頭的全球單播地址在接口標(biāo)識(shí)大小和結(jié)構(gòu)方面沒有這個(gè)限制),即要求n+m=64,為進(jìn)一步明確IPv6全球單播地址格式,RFC3587給出了新的格式,見圖2。
n bits
64-n bits
64 bits
全球路由前綴
子網(wǎng)ID
接口ID
圖2 RFC3587給出的IPv6全球單播地址新格式
RFC3513亦規(guī)定,IANA對(duì)IPv6全球單播地址的空間分配權(quán)限只局限于以二進(jìn)制001開頭的地址范圍。RFC3587雖廢除了RFC2374中全球可聚集單播地址的前綴格式001,但同時(shí)又指出,只有001前綴格式供IANA分配,其余的全球單播地址空間(大約是IPv6地址空間的85%)要保留下來,以備將來定義和使用,暫時(shí)不再由IANA分配。所以,由IANA代理、與RFC3177中的建議相一致的2000∷/3前綴的全球單播地址就成了如圖3所示的格式。
3 bits
45 bits
16 bits
64 bits
001
全球路由前
綴
子網(wǎng)ID
接口ID
圖3 IANA代理的2000∷/3前綴的IPv6全球單播地址格式
根據(jù)RFC3177,RFC3513和RFC3587,并結(jié)合目前LIR的分配情況,可將IANA有權(quán)分配的全球單播地址格式表示為圖4所列的形式。
3
45
16
64
001
29 bits
16 bits
16 bits
64 bits
LIR/32
客戶站點(diǎn)/48
子網(wǎng)/64
設(shè)備/128
圖4 IANA有權(quán)分配的IPv6全球單播地址格式
從該格式可以看出,在IANA有權(quán)分配的地址空間中,前三個(gè)比特是固定的,29比特地址空間分配給各LIR,LIR可將后面的16比特地址空間分配給客戶站點(diǎn)。這樣,客戶站點(diǎn)前綴即為48比特,并具有16比特的子網(wǎng)劃分空間。
3.進(jìn)一步明確了本地使用的IPv6單播地址
本地使用的單播地址有兩種,分別是鏈路本地地址和站點(diǎn)本地地址。
鏈路本地地址格式見圖5。
10 bits
54 bits
64 bits
1111111010
0
接口ID
圖5 鏈路本地地址格式
鏈路本地地址用于單個(gè)鏈接,可進(jìn)行自動(dòng)地址配置、鄰居發(fā)現(xiàn)或在沒有路由器時(shí)進(jìn)行單個(gè)鏈接編址。RFC3513規(guī)定,路由器不能轉(zhuǎn)發(fā)任何到達(dá)其他鏈路的具有鏈路本地源或目的地址的包。站點(diǎn)本地地址格式見圖6。
10 bits
54 bits
64 bits
1111111011
子網(wǎng)ID
接口ID
圖6 站點(diǎn)本地地址格式
站點(diǎn)本地地址用于單個(gè)站點(diǎn),即用于不需要全球前綴站點(diǎn)的內(nèi)部編址。盡管子網(wǎng)ID可以長達(dá)54位,但最好還是保證全球鏈接站點(diǎn)能在站點(diǎn)本地前綴和全球前綴中使用相同的子網(wǎng)ID。RFC3513規(guī)定,路由器不能轉(zhuǎn)發(fā)站點(diǎn)以外的任何具有站點(diǎn)本地源或目的地址的包。
4.鞏固了IPv4和IPv6聯(lián)合應(yīng)用的基礎(chǔ)
在RFC3513進(jìn)一步明確了“內(nèi)嵌IPv4地址的IPv6地址”的概念!皟(nèi)嵌IPv4地址的IPv6地址”包括“IPv4兼容的IPv6地址”和“IPv4映射的IPv6地址”!癐Pv4兼容的IPv6地址”的格式如圖7所示。
80 bits
16 bits
32 bits
0000………………0000
0000
IPv4地址
圖7 IPv4兼容的IPv6地址格式
這里使用的IPv4地址必須是全球唯一IPv4單播地址!癐Pv4映射的IPv6地址”用于代表IPv4節(jié)點(diǎn)的IPv6地址,其格式如圖8所示。
80 bits
16 bits
32 bits
0000………………0000
FFFF
IPv4地址
圖8 IPv4映射的IPv6地址格式
IPv4兼容地址和IPv4映射地址用于與傳統(tǒng)網(wǎng)絡(luò)之間的互聯(lián)互通,以使IPv4網(wǎng)絡(luò)和IPv6網(wǎng)絡(luò)之間能進(jìn)行無縫通信。
三、地址注冊(cè)機(jī)構(gòu)的IPv6地址分配策略
雖然新的IPv6地址結(jié)構(gòu)已經(jīng)發(fā)布,但還沒有相應(yīng)的新的地址分配策略出臺(tái),地址分配仍沿用按RFC3177制定的分配方法(RIPE-267)。
目前,IPv6的地址空間管理是按規(guī)定的等級(jí)結(jié)構(gòu)在全球范圍內(nèi)分配,即IANA->區(qū)域注冊(cè)機(jī)構(gòu)RIR(->國家注冊(cè)機(jī)構(gòu)NIR)->ISP/本地注冊(cè)機(jī)構(gòu)LIR->最終用戶(或ISP)。地址分配的方法分為兩種。一種是上層注冊(cè)機(jī)構(gòu)將抵制劃分給下層注冊(cè)機(jī)構(gòu)進(jìn)行管理,稱為分配。另一種是注冊(cè)機(jī)構(gòu)將地址劃分給用戶使用,稱為指派。為了互聯(lián)網(wǎng)發(fā)展的長期利益,IETF將IPv6地址空間管理的目標(biāo)確定為保證世界范圍內(nèi)的唯一性、統(tǒng)一在注冊(cè)數(shù)據(jù)庫中注冊(cè)、盡最大可能保證易聚合、避免無謂的空間浪費(fèi)、分配公平公正及注冊(cè)管理開銷的最小化等。上面所描述的這些管理目標(biāo)經(jīng)常相互沖突或與某些注冊(cè)機(jī)構(gòu)(IR)個(gè)體及終端用戶的需要相沖突,故必須尋求申請(qǐng)者的需要與整個(gè)互聯(lián)網(wǎng)社區(qū)的需要之間相互平衡,并能正確地判斷出哪方面的需要更為重要。一般情況下,在IPv6地址分配策略中,聚合的目標(biāo)被認(rèn)為是最重要的。
此外,IPv6地址空間管理還要遵循如下基本原則:
·不能把地址空間當(dāng)作私有財(cái)產(chǎn)。IPv6單播地址空間只能憑許可證使用而不能擁有。尤其IP地址是基于許可機(jī)制進(jìn)行分配和指派的,許可證需進(jìn)行周期性更新。許可證的批準(zhǔn)取決于其初次申請(qǐng)或續(xù)借申請(qǐng)時(shí)的特殊要求。
·不能保證路由的可選性。即不能保證所分配的任何地址在全球范圍都能進(jìn)行路由選擇。因此,要求RIR采取措施減少產(chǎn)生地址空間碎片的可能性,以避免路由的可選性受影響。
·IPv6地址空間的最小地址分配塊為32比特。RIR使用最小地址塊進(jìn)行IPv6地址分配,這樣做的目的是為了使基于前綴的過濾更加容易。對(duì)于已經(jīng)持有IPv6地址空間的組織,也就是那些已經(jīng)按照原有分配策略獲得35比特IPv6地址的注冊(cè)機(jī)構(gòu),一般不需要提供證明文件就可以直接將他們所分配的地址擴(kuò)展到32比特。該32比特地址塊包含已經(jīng)分配的地址塊(多數(shù)情況下為一個(gè)或多個(gè)35比特地址塊),RIR已經(jīng)將這些地址預(yù)留給原有組織以進(jìn)行后續(xù)分配。超過最小地址塊(32比特)的額外地址空間的申請(qǐng)需要在評(píng)估后再?zèng)Q定是否分配。
·兼顧原有IPv4基礎(chǔ)設(shè)施。已有的IPv4服務(wù)提供商由現(xiàn)有業(yè)務(wù)向IPv6過渡而申請(qǐng)IPv6地址空間時(shí),可將現(xiàn)在IPv4客戶數(shù)一并考慮。
LIR在將地址空間指派給用戶時(shí),要按照已有的RFC3177操作,即通常情況下,采用48比特進(jìn)行分配,除非特大客戶;已知一個(gè)且僅有一個(gè)子網(wǎng)需要設(shè)計(jì)時(shí),采用64比特進(jìn)行分配;僅有一個(gè)設(shè)備連接時(shí),采用比特進(jìn)行分配。
四、IPv6地址分配策略發(fā)展趨勢
根據(jù)最新的IPv6地質(zhì)結(jié)構(gòu)體系的特點(diǎn),結(jié)合目前地址分配的現(xiàn)狀,可以看出IPv6地址分配策略正在向如下的趨勢發(fā)展:
1.有利于市場推廣和商業(yè)應(yīng)用
雖然IPv6有許多IPv4所不具備的優(yōu)點(diǎn),但是我們也已經(jīng)看到,IPv6的市場推廣工作非常令人不滿意。一方面的原因在于,IPv6并沒有為用戶帶來所期望獲得的好處:另一方面的原因也在于,在IPv6的地址申請(qǐng)時(shí)有較多的繁瑣細(xì)節(jié),用戶認(rèn)為暫時(shí)沒有必要去找那些麻煩。
正如RFC3177中指出,IPv6地址空間決不是像IPv4地址空間那樣有限,本來由于其他的原因就已經(jīng)使得IPv6的市場非常低迷了,而毫無理由的保留行為更加重了其低進(jìn)的程度。因此從市場前途方面來考慮,也應(yīng)該使用戶或ISP很容易地獲得與他們實(shí)際所需的數(shù)量一樣多的IPv6地址,而不期望其立即使用這些地址或度量其使用效率有多么低。這樣,通過減少跟蹤和評(píng)估的緊迫性,使得注冊(cè)操作更高效、更集中。在當(dāng)前的地址分配策略中(RIPE-267)中規(guī)定,分給小企業(yè)或大企業(yè)一個(gè)48比特地址,而且可以為特大客戶分一個(gè)47比特或更短前綴的地址、或者是多個(gè)48比特地址;再加上RFC3513和RFC3587這兩個(gè)文檔,用戶可以非常容易地改變ISP,在申請(qǐng)地址空間時(shí)也不再需要費(fèi)力地闡述自己是否有正當(dāng)?shù)睦碛蓙砩暾?qǐng)這些地址。所有這些都有市場推廣和商業(yè)應(yīng)用方面的考慮。
2.便于移動(dòng)、需時(shí)即連或永遠(yuǎn)在線
目前,移動(dòng)通信網(wǎng)絡(luò)的需求已經(jīng)越來越大,如移動(dòng)電話、汽車辦公等等;而隨著藍(lán)芽技術(shù)等的出現(xiàn),使得需時(shí)即連或永遠(yuǎn)在線都成為可能,并已經(jīng)成為網(wǎng)絡(luò)用戶發(fā)展的新趨勢。在RFC3177中,已經(jīng)建議為移動(dòng)用戶分配一個(gè)靜態(tài)64位前綴地址,以便多個(gè)設(shè)備通過一個(gè)子網(wǎng)進(jìn)行聯(lián)接;而對(duì)于那些有需時(shí)即連或永遠(yuǎn)在線的家庭網(wǎng)絡(luò)客戶則分給一個(gè)48位地址。
3.便于管理與應(yīng)用
隨著網(wǎng)絡(luò)應(yīng)用的發(fā)展,網(wǎng)絡(luò)規(guī)模越來越大,網(wǎng)絡(luò)結(jié)構(gòu)也越來越復(fù)雜,即使是比較簡單的功能,實(shí)現(xiàn)起來可能也會(huì)由于地址結(jié)構(gòu)的原因而非常繁瑣。比如,在站點(diǎn)從一個(gè)前綴換到另一個(gè)前綴的簡單操作(包括兩個(gè)前綴并列運(yùn)行)的整個(gè)過程中,如果前綴長度不同(與站點(diǎn)的大小和復(fù)雜性有關(guān)),操作就會(huì)極為復(fù)雜。而如果用戶已經(jīng)采用6to4技術(shù)建立了自己的網(wǎng)絡(luò),需要改變網(wǎng)絡(luò)前綴時(shí),地址遷移也是一個(gè)非常復(fù)雜的工作。
為了盡量減少上述類似的情況發(fā)生,避免給管理和應(yīng)用帶來不必要的麻煩,IETF正努力從地址劃分的技術(shù)上解決這些問題。在RFC3177中就提供了一種方法,就是將地址前綴分界固定為48比特,這樣就可以保證用戶在改變即時(shí)不需要高昂代價(jià)進(jìn)行子網(wǎng)重構(gòu)與合并。在RFC3513新給出的地址結(jié)構(gòu)中,全球路由前綴使用類似CIDR的結(jié)構(gòu)。而通過RFC3513和RFC3587兩個(gè)文件,使得每個(gè)用戶(除了大用戶和移動(dòng)節(jié)點(diǎn)外,不管是公司用戶還是個(gè)人用戶)都可以獲得48比特前綴和16比特子網(wǎng)空間,而且還簡化多了多穴網(wǎng)絡(luò)和多穴主機(jī)的情形。
4.考慮用戶網(wǎng)絡(luò)的服務(wù)質(zhì)量保證
雖然互聯(lián)網(wǎng)絡(luò)是一個(gè)“盡力而為”的網(wǎng)絡(luò),但并不能由此就認(rèn)為它不考慮對(duì)用戶的。在RIPE-267中規(guī)定,RIR必須采取措施,減少產(chǎn)生地址空間碎片的可能性,以免導(dǎo)致可路由性損失;而在IPv6地址策略中,把聚合作為最重要的目標(biāo),也正是基于這一點(diǎn)地考慮。目前,IETF正在尋找不過度損失路由聚集和/或最優(yōu)路由選擇的方法,以解決IPv6多穴網(wǎng)絡(luò)的路由質(zhì)量問題。
五、結(jié)束語
IPv6協(xié)議龐大的地址空間為下一代網(wǎng)絡(luò)的發(fā)展奠定了堅(jiān)實(shí)的基礎(chǔ)。IETF及相關(guān)機(jī)構(gòu)正在努力挖掘其巨大潛力,不斷地完善其地址結(jié)構(gòu)體系和地址分配策略,使之能在市場方面取得成功,并在應(yīng)用方面為用戶提供完美的服務(wù)。我們已經(jīng)看到,這些努力已經(jīng)取得了相當(dāng)大的成績,IPv6網(wǎng)絡(luò)相關(guān)技術(shù)研究已經(jīng)在世界范圍內(nèi)轟轟烈烈地開展起來,有些國家甚至已經(jīng)開始商用。我們相信,隨著IPv6技術(shù)的不斷成熟,IPv6網(wǎng)絡(luò)的商用化進(jìn)程將會(huì)不斷加快,必將會(huì)大大地推動(dòng)下一代網(wǎng)絡(luò)的發(fā)展。
摘自 泰爾網(wǎng)