IPv6是對(duì)IPv4的革新,盡管大多數(shù)IPv6的路由協(xié)議都需要重新設(shè)計(jì)或者開發(fā),但I(xiàn)Pv6路由協(xié)議相對(duì)IPv4只有很小的變化。目前各種常用的單播路由協(xié)議(IGP、EGP)和組播協(xié)議都已經(jīng)支持IPv6。
1 IPv6單播路由協(xié)議
IPv6單播路由協(xié)議實(shí)現(xiàn)和IPv4中類似,有些是在原有協(xié)議上做了簡單擴(kuò)展(如,ISISv6、BGP4+),有些則完全是新的版本(如,RIPng、OSPFv3)。
1.1 RIPng
下一代RIP協(xié)議(簡稱RIPng)是對(duì)原來的IPv4網(wǎng)絡(luò)中RIP-2協(xié)議的擴(kuò)展。大多數(shù)RIP的概念都可以用于RIPng。
為了在IPv6網(wǎng)絡(luò)中應(yīng)用,RIPng對(duì)原有的RIP協(xié)議進(jìn)行了修改:
UDP端口號(hào):使用UDP的521端口發(fā)送和接收路由信息
組播地址:使用FF02::9作為鏈路本地范圍內(nèi)的RIPng路由器組播地址
路由前綴:使用128比特的IPv6地址作為路由前綴
下一跳地址:使用128比特的IPv6地址
1.2 OSPFv3
OSPFv3是OSPF版本3的簡稱,主要提供對(duì)IPv6的支持,遵循的標(biāo)準(zhǔn)為 RFC2740(OSPF for IPv6)。與OSPFv2相比,OSPFv3除了提供對(duì)IPv6的支持外,還充分考慮了協(xié)議的網(wǎng)絡(luò)無關(guān)性以及可擴(kuò)展性,進(jìn)一步理順了拓?fù)渑c路由的關(guān)系,使得OSPF的協(xié)議邏輯更加簡單清晰,大大提高了OSPF的可擴(kuò)展性。
OSPFv3和OSPFv2的不同主要有:
修改了LSA的種類和格式,使其支持發(fā)布IPv6路由信息
修改部分協(xié)議流程,使其獨(dú)立于網(wǎng)絡(luò)協(xié)議,大大提高了可擴(kuò)展性
主要的修改包括用Router-ID來標(biāo)識(shí)鄰居,使用鏈路本地(Link-local)地址來發(fā)現(xiàn)鄰居等,使得拓?fù)浔旧愍?dú)立于網(wǎng)絡(luò)協(xié)議,與便于未來擴(kuò)展。
進(jìn)一步理順了拓?fù)渑c路由的關(guān)系
OSPFv3在LSA中將拓?fù)渑c路由信息相分離,一、二類LSA中不再攜帶路由信息,而只是單純的描述拓?fù)湫畔ⅲ硗庥眯略龅陌、九類LSA結(jié)合原有的三、五、七類LSA來發(fā)布路由前綴信息。
提高了協(xié)議適應(yīng)性
通過引入LSA擴(kuò)散范圍的概念,進(jìn)一步明確了對(duì)未知LSA的處理,使得協(xié)議可以在不識(shí)別LSA的情況下根據(jù)需要做出恰當(dāng)處理,大大提高了協(xié)議對(duì)未來擴(kuò)展的適應(yīng)性。
1.3 IS-ISv6
IS-IS是由國際標(biāo)準(zhǔn)化組織ISO為其無連接網(wǎng)絡(luò)協(xié)議CLNP發(fā)布的動(dòng)態(tài)路由協(xié)議。同BGP一樣,IS-IS可以同時(shí)承載IPv4和IPv6的路由信息。
為了使IS-IS支持IPv4,IETF在RFC1195中對(duì)IS-IS協(xié)議進(jìn)行了擴(kuò)展,命名為集成化IS-IS(Integrated IS-IS)或雙IS-IS(Dual IS-IS)。這個(gè)新的IS-IS協(xié)議可同時(shí)應(yīng)用在TCP/IP和OSI環(huán)境中。在此基礎(chǔ)上,為了有效的支持IPv6,IETF在draft-ietf-isis-ipv6-05.txt中對(duì)IS-IS進(jìn)一步進(jìn)行了擴(kuò)展,主要是新添加了支持IPv6路由信息的兩個(gè)TLV(Type-Length-Values)和一個(gè)新的NLP ID(Network Layer Protocol Identifier)。
TLV是在LSP(Link State PDUs)中的一個(gè)可變長結(jié)構(gòu),新增的兩個(gè)TLV分別是:
IPv6 Reachability(TLV type 236):
類型值為236(0xEC),通過定義路由信息前綴、度量值等信息來說明網(wǎng)絡(luò)的可達(dá)性。
IPv6 Interface Address(TLV type 232):
類型值為232(0xE8),它相當(dāng)于IPv4中的“IP Interface Address”TLV,只不過把原來的32比特的IPv4地址改為128比特的IPv6地址。
NLP ID是標(biāo)識(shí)IS-IS支持何種網(wǎng)絡(luò)層協(xié)議的一個(gè)8比特字段,IPv6對(duì)應(yīng)的NLP ID值為142(0x8E)。如果IS-IS路由器支持IPv6,那么它必須在Hello報(bào)文中攜帶該值向鄰居通告它支持IPv6。
1.4 BGP4+
傳統(tǒng)的BGP-4只能管理IPv4的路由信息,對(duì)于使用其它網(wǎng)絡(luò)層協(xié)議(如IPv6等)的應(yīng)用,在跨自治系統(tǒng)傳播時(shí)就受到一定限制。
為了提供對(duì)多種網(wǎng)絡(luò)層協(xié)議的支持,IETF對(duì)BGP-4進(jìn)行了擴(kuò)展,形成BGP4+,目前的BGP4+標(biāo)準(zhǔn)是RFC2858(Multiprotocol Extensions for BGP-4,BGP-4多協(xié)議擴(kuò)展)。
為了實(shí)現(xiàn)對(duì)IPv6協(xié)議的支持,BGP-4+需要將IPv6網(wǎng)絡(luò)層協(xié)議的信息反映到NLRI(Network Layer Reachable Information)及Next_Hop屬性中。
BGP4+中引入的兩個(gè)NLRI屬性分別是:
MP_REACH_NLRI:Multiprotocol Reachable NLRI,多協(xié)議可達(dá)NLRI。用于發(fā)布可達(dá)路由及下一跳信息。
MP_UNREACH_NLRI:Multiprotocol Unreachable NLRI,多協(xié)議不可達(dá)NLRI。用于撤銷不可達(dá)路由。
BGP4+中的Next_Hop屬性用IPv6地址來表示,可以是IPv6全球單播地址或者下一跳的鏈路本地地址。
BGP4+利用BGP的多協(xié)議擴(kuò)展屬性來達(dá)到在IPv6網(wǎng)絡(luò)中應(yīng)用的目的,BGP協(xié)議原有的消息機(jī)制和路由機(jī)制并沒有改變。
2 IPv6組播路由協(xié)議
IPv6提供了豐富的組播協(xié)議支持,包括MLDv1、MLDv1 Snooping、PIM-SM、PIM-DM、PIM-SSM。
2.1 MLDv1
Multicast Listener Discovery for IPv6(簡稱MLD)為IPv6組播監(jiān)聽發(fā)現(xiàn)協(xié)議。MLD是一個(gè)非對(duì)稱的協(xié)議,IPv6組播成員(主機(jī)或路由器)和IPv6組播路由器的協(xié)議行為是不同的。它的目的是使IPv6路由器采用MLD來發(fā)現(xiàn)與其直連的IPv6組播監(jiān)聽者的出現(xiàn),并進(jìn)行組成員關(guān)系的收集和維護(hù),將收集的信息提供給IPv6路由器,使組播包傳送到存在IPv6監(jiān)聽者的所有鏈路上。
MLDv1與IPv4的IGMPv2基本相同。區(qū)別有兩點(diǎn):一、MLDv1的協(xié)議報(bào)文地址使用IPv6地址;二、離開報(bào)文的名稱不同。MLDv1的離開報(bào)文是Multicast Listener Done,IGMP的離開報(bào)文是IGMP Leave。
2.2 MLDv1 Snooping
MLDv1 Snooping與IPv4的IGMPv2 Snooping基本相同,唯一的區(qū)別在于協(xié)議報(bào)文地址使用IPv6地址。
2.3 PIM-SM
PIM-SM稱為基于稀疏模式的協(xié)議無關(guān)組播路由協(xié)議,它運(yùn)用潛在的單播路由為組播樹的建立提供反向路徑信息,并不依賴與特定的單播路由協(xié)議。
IPv6的PIM-SM與IPv4的基本相同,唯一的區(qū)別在于協(xié)議報(bào)文地址及組播數(shù)據(jù)報(bào)文地址均使用IPv6地址。
2.4 PIM-DM
PIM-DM為密集模式的協(xié)議無關(guān)組播模式。
IPv6的PIM-DM與IPv4的基本相同,唯一的區(qū)別在于協(xié)議報(bào)文地址及組播數(shù)據(jù)報(bào)文地址均使用IPv6地址。
2.5 PIM-SSM
PIM-SSM采用PIM-SM中的一部分技術(shù)用來實(shí)現(xiàn)SSM模型。由于接收者已經(jīng)通過其他渠道知道了組播源S的具體位置,因此SSM模型中無需RP節(jié)點(diǎn),無需構(gòu)建RPT樹,無需源注冊(cè)過程,同時(shí)也無需MSDP來發(fā)現(xiàn)其他PIM域內(nèi)的組播源。
作者:阿古 來源:比特網(wǎng)論壇