本發(fā)明涉及SDN技術(shù)領(lǐng)域,具體為一種基于SDN的IPv4向IPv6過渡的方法及系統(tǒng)。
背景技術(shù):
當(dāng)前,大量的網(wǎng)絡(luò)是IPv4網(wǎng)絡(luò),隨著IPv6的部署,很長一段時(shí)間是IPv4與IPv6共存的過渡階段。傳統(tǒng)IPv6over IPv4隧道是靜態(tài)建立的,當(dāng)網(wǎng)絡(luò)發(fā)生變化的時(shí)候,需要重新拆除和建立。而且隧道拆除和建立的配置需要涉及到整個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),配置復(fù)雜而且繁瑣。目前IPv4(Internet Protocol Version4,因特網(wǎng)協(xié)議版本4)的發(fā)展遇到瓶頸,一方面,IANA(The Internet Assigned Numbers Authority,互聯(lián)網(wǎng)數(shù)字分配機(jī)構(gòu))的IPv4地址已經(jīng)枯竭,各RIR(Regional Internet Register,地區(qū)性互聯(lián)網(wǎng)注冊(cè)機(jī)構(gòu))可分配地址空間將在2014年左右耗盡,現(xiàn)有網(wǎng)絡(luò)將無法獲得IPv4地址以持續(xù)發(fā)展,移動(dòng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)的出現(xiàn)使得問題加?。涣硪环矫?,IPv4體系的路由效率低,移動(dòng)性差,安全和服務(wù)質(zhì)量難以保障,可擴(kuò)展性較差,因此,IPv4網(wǎng)絡(luò)難以滿足和支撐網(wǎng)絡(luò),特別是移動(dòng)互聯(lián)網(wǎng)、物聯(lián)網(wǎng)等新業(yè)務(wù)和網(wǎng)絡(luò)構(gòu)架的發(fā)展。IPv6(Internet Protocol Version6,因特網(wǎng)協(xié)議版本6)作為IETF(Internet Engineering Task Force,互聯(lián)網(wǎng)工程任務(wù)組)確定的下一代互聯(lián)網(wǎng)協(xié)議,能夠從根本上解決IPv4存在的問題。IETF從1992年就開始著手研究IPv6,目前IPv6的相關(guān)標(biāo)準(zhǔn)和產(chǎn)品已經(jīng)成熟。IPv6以其地址充足、報(bào)頭高效、即插即用、網(wǎng)絡(luò)安全、端到端QoS(Quality of Service,服務(wù)質(zhì)量)以及良好移動(dòng)IP等特性,可為移動(dòng)互聯(lián)網(wǎng)、云計(jì)算、物聯(lián)網(wǎng)等新業(yè)務(wù)的開展提供有力的保證。因此,IPv4網(wǎng)絡(luò)向IPv6網(wǎng)絡(luò)過渡演進(jìn)是必然趨勢(shì),且刻不容緩?,F(xiàn)階段在SDN環(huán)境下實(shí)現(xiàn)IPv4向IPv6過渡技術(shù)還不夠好。
如公開號(hào)為CN104135446A的專利公開了一種基于SDN實(shí)現(xiàn)IPv4向IPv6過渡的系統(tǒng)及方法,涉及SDN領(lǐng)域,該系統(tǒng)的硬件包括控制器和交換機(jī),該系統(tǒng)的軟件模塊均在linux操作系統(tǒng)的應(yīng)用層開發(fā),控制器包括第一OpenFlow接口模塊、第一配置管理模塊、第一流表管理模塊和第一地址管理模塊;交換機(jī)包括第二OpenFlow接口模塊、第二配置管理模塊、第二流表管理模塊、第二地址管理模塊、隧道模塊和網(wǎng)絡(luò)地址轉(zhuǎn)換NAT模塊。其存在上述的缺陷,其IPV6頭是在交換機(jī)端實(shí)現(xiàn)的,IPv6over IPv4隧道是靜態(tài)建立的,當(dāng)網(wǎng)絡(luò)發(fā)生變化的時(shí)候,需要重新拆除和建立。而且隧道拆除和建立的配置需要涉及到整個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),配置復(fù)雜而且繁瑣。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的一個(gè)目的是提供一種穩(wěn)定性高、配置簡單、無需人為干預(yù)、運(yùn)行更加流暢的基于SDN的IPv4向IPv6過渡的方法及系統(tǒng)。
本發(fā)明的上述技術(shù)目的是通過以下技術(shù)方案得以實(shí)現(xiàn)的:
一種基于SDN的IPv4向IPv6過渡的系統(tǒng),包括SDN控制器和SDN交換機(jī),SDN控制器具有未匹配流表的IPv6報(bào)文接收模塊、IPv6轉(zhuǎn)發(fā)表查詢模塊、轉(zhuǎn)發(fā)路徑計(jì)算模塊、流表下發(fā)模塊;其中,
所述未匹配流表的IPv6報(bào)文包括源IP信息、目的IP信息;
所述未匹配流表的IPv6報(bào)文接收模塊用于接收來自SDN交換機(jī)的未匹配流表的IPv6報(bào)文;
所述IPv6轉(zhuǎn)發(fā)表查詢模塊用于SDN控制器根據(jù)目的IP查詢IPv6轉(zhuǎn)發(fā)表,獲得出口交換機(jī)的出端口;
所述轉(zhuǎn)發(fā)路徑計(jì)算模塊用于SDN控制器根據(jù)IPv6轉(zhuǎn)發(fā)表查詢模塊查詢結(jié)果和網(wǎng)絡(luò)拓?fù)洳⒂?jì)算轉(zhuǎn)發(fā)路徑;
所述流表下發(fā)模塊用于SDN控制器向SDN交換機(jī)下發(fā)流表。
作為對(duì)本發(fā)明的優(yōu)選,SDN控制器還具有交換機(jī)端口IPv4或IPv6地址、掩碼或前綴長度獲取模塊,所述交換機(jī)端口IPv4或IPv6地址、掩碼或前綴長度獲取模塊用于接收SDN交換機(jī)端口IPv4或IPv6地址、掩碼或前綴長度并形成基于SDN網(wǎng)絡(luò)的IPv4或IPv6轉(zhuǎn)發(fā)表。
作為對(duì)本發(fā)明的優(yōu)選,所述流表下發(fā)模塊下發(fā)的流表中包括若為入口交換機(jī)則對(duì)報(bào)文打上IPv4隧道頭的流表項(xiàng)、若為中間交換機(jī)則基于IPv4隧道頭則對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)的流表項(xiàng)、若為出口交換機(jī)則對(duì)報(bào)文剝離IPv4隧道頭的流表項(xiàng),SDN交換機(jī)具有相應(yīng)的流表執(zhí)行模塊,所述流表執(zhí)行模塊用于當(dāng)SDN交換機(jī)為入口交換機(jī)則根據(jù)流表插入IPv4隧道頭、當(dāng)SDN交換機(jī)為中間交換機(jī)則根據(jù)流表轉(zhuǎn)發(fā)、當(dāng)SDN交換機(jī)為出口交換機(jī)則根據(jù)流表剝離IPv4隧道頭。
作為對(duì)本發(fā)明的優(yōu)選,SDN交換機(jī)還具有報(bào)文接收模塊、流表匹配模塊、匹配轉(zhuǎn)發(fā)模塊;其中,
所述報(bào)文接收模塊用于接收?qǐng)?bào)文;
所述流表匹配模塊用于將報(bào)文與流表進(jìn)行匹配,若不匹配則報(bào)文被送往SDN控制器,若匹配則通過所述匹配轉(zhuǎn)發(fā)模塊進(jìn)行轉(zhuǎn)發(fā);
所述匹配轉(zhuǎn)發(fā)模塊用于判斷報(bào)文是IPv4報(bào)文還是IPv6報(bào)文且如果是IPv4報(bào)文則根據(jù)流表進(jìn)行轉(zhuǎn)發(fā)、如果是IPv6報(bào)文又是入口交換機(jī)則插入IPv4隧道頭并轉(zhuǎn)發(fā)、如果是IPv6報(bào)文又是中間交換機(jī)則根據(jù)IPv4隧道頭進(jìn)行轉(zhuǎn)發(fā)、如果是IPv6報(bào)文又是出口交換機(jī)則剝離IPv4隧道頭進(jìn)行轉(zhuǎn)發(fā)。
作為對(duì)本發(fā)明的優(yōu)選,所述IPv6轉(zhuǎn)發(fā)表包括IPv6地址、IPv6前綴長度、類型、交換機(jī)id、交換機(jī)端口;其中,
所述IPv6地址用于表明IPv6地址;
所述IPv6前綴長度用于表明IPv6前綴長度;
所述類型包括靜態(tài)和動(dòng)態(tài)類型;
所述交換機(jī)id用于表明SDN交換機(jī)的id。
所述交換機(jī)端口用于表明SDN交換機(jī)的端口。
作為對(duì)本發(fā)明的優(yōu)選,SDN控制器支持基于SDN的IPv4向IPv6過渡技術(shù)算法配置任務(wù)序列并包括:基于SDN的IPv4向IPv6過渡功能打開或關(guān)閉。
作為對(duì)本發(fā)明的優(yōu)選,SDN交換機(jī)和SDN控制器支持?jǐn)U充流表。
本發(fā)明還公開了一種基于SDN的IPv4向IPv6過渡的方法,其按如下步驟進(jìn)行:
步驟1,SDN交換機(jī)上報(bào)給SDN控制器未匹配流表的IPv6報(bào)文;
步驟2,SDN控制器查詢IPv6轉(zhuǎn)發(fā)表和計(jì)算轉(zhuǎn)發(fā)路徑;
步驟3,SDN控制器根據(jù)步驟2的結(jié)果下發(fā)流表。
作為對(duì)本發(fā)明的優(yōu)選,在步驟1之前,SDN交換機(jī)上報(bào)端口的IPv4或IPv6的地址、掩碼或前綴長度并形成基于SDN網(wǎng)絡(luò)的IPv4或IPv6轉(zhuǎn)發(fā)表。
作為對(duì)本發(fā)明的優(yōu)選,步驟3中,下發(fā)的流表中包括若為入口交換機(jī)則對(duì)報(bào)文打上IPv4隧道頭的流表項(xiàng)、若為中間交換機(jī)則基于IPv4隧道頭則對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)的流表項(xiàng)、若為出口交換機(jī)則對(duì)報(bào)文剝離IPv4隧道頭的流表項(xiàng)。
本發(fā)明一種基于SDN的IPv4向IPv6過渡的方法,SDN控制器對(duì)流表的控制,即,SDN控制器配置流表,來完善過渡的方法,配置簡單、無需人為干預(yù),基于SDN架構(gòu)的,IPv6over IPv4隧道根據(jù)IPv6的轉(zhuǎn)發(fā)表自動(dòng)建立。
附圖說明
圖1是本發(fā)明實(shí)施例2的基于SDN的IPv4向IPv6過渡總流程圖;
圖2是本發(fā)明實(shí)施例2的SDN控制器處理示意圖;
圖3是本發(fā)明實(shí)施例2的SDN交換機(jī)處理示意圖;
圖4是本發(fā)明實(shí)施例2的私有擴(kuò)展Experimenter報(bào)文的格式;
圖5是本發(fā)明實(shí)施例2的模擬測(cè)試環(huán)境的示意圖。
具體實(shí)施方式
以下具體實(shí)施例僅僅是對(duì)本發(fā)明的解釋,其并不是對(duì)本發(fā)明的限制,本領(lǐng)域技術(shù)人員在閱讀完本說明書后可以根據(jù)需要對(duì)本實(shí)施例做出沒有創(chuàng)造性貢獻(xiàn)的修改,但只要在本發(fā)明的權(quán)利要求范圍內(nèi)都受到專利法的保護(hù)。
實(shí)施例1
本實(shí)施例一種基于SDN的IPv4向IPv6過渡的系統(tǒng),包括SDN控制器和SDN交換機(jī)(S0、S1、S2、S3),SDN控制器具有未匹配流表的IPv6報(bào)文接收模塊、IPv6轉(zhuǎn)發(fā)表查詢模塊、轉(zhuǎn)發(fā)路徑計(jì)算模塊、流表下發(fā)模塊;其中,
所述未匹配流表的IPv6報(bào)文包括源IP信息、目的IP信息;
所述未匹配流表的IPv6報(bào)文接收模塊用于接收來自SDN交換機(jī)的未匹配流表的IPv6報(bào)文;
所述IPv6轉(zhuǎn)發(fā)表查詢模塊用于SDN控制器根據(jù)目的IP查詢IPv6轉(zhuǎn)發(fā)表,獲得出口交換機(jī)的出端口;
所述轉(zhuǎn)發(fā)路徑計(jì)算模塊用于SDN控制器根據(jù)IPv6轉(zhuǎn)發(fā)表查詢模塊查詢結(jié)果和網(wǎng)絡(luò)拓?fù)洳⒂?jì)算轉(zhuǎn)發(fā)路徑;
所述流表下發(fā)模塊用于SDN控制器向SDN交換機(jī)下發(fā)流表。
SDN交換機(jī)上報(bào)未匹配流表的IPv6報(bào)文至SDN控制器,SDN控制器通過未匹配流表的IPv6報(bào)文接收模塊進(jìn)行接收,通過IPv6轉(zhuǎn)發(fā)表查詢模塊根據(jù)目的IP查詢IPv6轉(zhuǎn)發(fā)表,獲得出口交換機(jī)的出端口,并有通過轉(zhuǎn)發(fā)路徑計(jì)算模塊根據(jù)IPv6轉(zhuǎn)發(fā)表查詢模塊查詢結(jié)果和網(wǎng)絡(luò)拓?fù)洳⒂?jì)算轉(zhuǎn)發(fā)路徑,最后SDN控制器由流表下發(fā)模塊根據(jù)前面的結(jié)論下向SDN交換機(jī)下發(fā)流表來有效實(shí)現(xiàn)IPv4向IPv6過渡。
在此基礎(chǔ)之上,SDN控制器還具有交換機(jī)端口IPv4或IPv6地址、掩碼或前綴長度獲取模塊,所述交換機(jī)端口IPv4或IPv6地址、掩碼或前綴長度獲取模塊用于接收SDN交換機(jī)端口IPv4或IPv6地址、掩碼或前綴長度并形成基于SDN網(wǎng)絡(luò)的IPv4或IPv6轉(zhuǎn)發(fā)表。便于上述的目的IP的查詢作業(yè)。
為了具體有效地實(shí)現(xiàn)這個(gè)過程,所述流表下發(fā)模塊下發(fā)的流表中包括若為入口交換機(jī)則對(duì)報(bào)文打上IPv4隧道頭的流表項(xiàng)、若為中間交換機(jī)則基于IPv4隧道頭則對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)的流表項(xiàng)、若為出口交換機(jī)則對(duì)報(bào)文剝離IPv4隧道頭的流表項(xiàng),SDN交換機(jī)具有相應(yīng)的流表執(zhí)行模塊,所述流表執(zhí)行模塊用于當(dāng)SDN交換機(jī)為入口交換機(jī)則根據(jù)流表插入IPv4隧道頭、當(dāng)SDN交換機(jī)為中間交換機(jī)則根據(jù)流表轉(zhuǎn)發(fā)、當(dāng)SDN交換機(jī)為出口交換機(jī)則根據(jù)流表剝離IPv4隧道頭。
而在上述的過渡的過程之前,SDN交換機(jī)還要預(yù)先對(duì)是IPv4報(bào)文還是IPv6報(bào)文發(fā)送過程中作出有效的區(qū)分,因此系統(tǒng)的設(shè)計(jì)中還有如下設(shè)置:SDN交換機(jī)還具有報(bào)文接收模塊、流表匹配模塊、匹配轉(zhuǎn)發(fā)模塊;其中,
所述報(bào)文接收模塊用于接收?qǐng)?bào)文;
所述流表匹配模塊用于將報(bào)文與流表進(jìn)行匹配,若不匹配則報(bào)文被送往SDN控制器,若匹配則通過所述匹配轉(zhuǎn)發(fā)模塊進(jìn)行轉(zhuǎn)發(fā);
所述匹配轉(zhuǎn)發(fā)模塊用于判斷報(bào)文是IPv4報(bào)文還是IPv6報(bào)文且如果是IPv4報(bào)文則根據(jù)流表進(jìn)行轉(zhuǎn)發(fā)、如果是IPv6報(bào)文又是入口交換機(jī)則插入IPv4隧道頭并轉(zhuǎn)發(fā)、如果是IPv6報(bào)文又是中間交換機(jī)則根據(jù)IPv4隧道頭進(jìn)行轉(zhuǎn)發(fā)、如果是IPv6報(bào)文又是出口交換機(jī)則剝離IPv4隧道頭進(jìn)行轉(zhuǎn)發(fā)。
因此,未匹配的IPv6報(bào)文會(huì)被送往SDN控制器并根據(jù)SDN控制器下發(fā)的流表進(jìn)行相應(yīng)的涉及IPv4隧道頭的轉(zhuǎn)發(fā),而未匹配的IPv4報(bào)文也會(huì)被送往SDN控制器并根據(jù)SDN控制器下發(fā)的流表進(jìn)行轉(zhuǎn)發(fā)即可。
SDN控制器應(yīng)支持基于SDN的IPv4向IPv6過渡技術(shù)算法配置任務(wù)序列,應(yīng)包括:基于SDN的IPv4向IPv6過渡功能打開或關(guān)閉。
所述IPv6轉(zhuǎn)發(fā)表包括IPv6地址、IPv6前綴長度、類型、交換機(jī)id、交換機(jī)端口;其中,
所述IPv6地址用于表明IPv6地址;
所述IPv6前綴長度用于表明IPv6前綴長度;
所述類型包括靜態(tài)和動(dòng)態(tài)類型;
所述交換機(jī)id用于表明SDN交換機(jī)的id。
所述交換機(jī)端口用于表明SDN交換機(jī)的端口。
基于SDN網(wǎng)絡(luò)的IPv6轉(zhuǎn)發(fā)表格式如下表所示:
SDN交換機(jī)和SDN控制器支持?jǐn)U充流表,其定義如下表所示:
本系統(tǒng)是基于SDN架構(gòu)的,IPv6over IPv4隧道根據(jù)IPv6的轉(zhuǎn)發(fā)表自動(dòng)建立。如果網(wǎng)絡(luò)拓?fù)浒l(fā)生變化,交換機(jī)需立即通知控制器,更新IPv6的轉(zhuǎn)發(fā)表,同時(shí)自動(dòng)拆除舊的IPv6隧道,建立新的IPv6隧道,整個(gè)過程無需人為干預(yù),配置簡單。
實(shí)施例2
本實(shí)施例一種基于SDN的IPv4向IPv6過渡的方法,按如下步驟進(jìn)行:
步驟1,SDN交換機(jī)上報(bào)給SDN控制器未匹配流表的IPv6報(bào)文;
步驟2,SDN控制器查詢IPv6轉(zhuǎn)發(fā)表和計(jì)算轉(zhuǎn)發(fā)路徑;
步驟3,SDN控制器根據(jù)步驟2的結(jié)果下發(fā)流表。
上述方法是基于SDN的過渡方法,其總流程圖如圖1所示,而在步驟1之前,SDN交換機(jī)需要上報(bào)端口的IPv4或IPv6地址和掩碼或前綴長度給SDN控制器,下面在進(jìn)一步具體的實(shí)現(xiàn)方案中也會(huì)提及。
在步驟1之前,SDN交換機(jī)上報(bào)端口的IPv4或IPv6的地址、掩碼或前綴長度并形成基于SDN網(wǎng)絡(luò)的IPv4或IPv6轉(zhuǎn)發(fā)表。
步驟3中,下發(fā)的流表中包括若為入口交換機(jī)則對(duì)報(bào)文打上IPv4隧道頭的流表項(xiàng)、若為中間交換機(jī)則基于IPv4隧道頭則對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)的流表項(xiàng)、若為出口交換機(jī)則對(duì)報(bào)文剝離IPv4隧道頭的流表項(xiàng)。
在這整個(gè)方法過程中,SDN控制器的處理過程如圖2所示,1、SDN控制器接收SDN交換機(jī)端口IPv4或IPv6地址、掩碼或前綴長度并形成基于SDN網(wǎng)絡(luò)的IPv4或IPv6轉(zhuǎn)發(fā)表;2、SDN控制器從SDN交換機(jī)接收未匹配流表的IPv6報(bào)文,提取源IP、目的IP,SDN控制器根據(jù)目的IP查詢IPv6轉(zhuǎn)發(fā)表,獲得出口交換機(jī)的出端口,SDN控制器根據(jù)查詢結(jié)果和網(wǎng)絡(luò)拓?fù)?,?jì)算轉(zhuǎn)發(fā)路徑,并下流表,流表中包括若SDN交換機(jī)為入口交換機(jī)則對(duì)報(bào)文打上IPv4隧道頭的流表項(xiàng)、若SDN交換機(jī)為中間交換機(jī)則基于IPv4隧道頭則對(duì)報(bào)文進(jìn)行轉(zhuǎn)發(fā)的流表項(xiàng)、若SDN交換機(jī)為出口交換機(jī)則對(duì)報(bào)文剝離IPv4隧道頭的流表項(xiàng)。而SDN交換機(jī)根據(jù)流表進(jìn)行有效執(zhí)行。
在這整個(gè)方法過程中,SDN交換機(jī)的處理過程如圖3所示,SDN交換機(jī)接收?qǐng)?bào)文并將報(bào)文與流表進(jìn)行匹配,如果不匹配,報(bào)文被送往SDN控制器,否則需要判斷是IPv4報(bào)文還是IPv6報(bào)文,如果是IPv4報(bào)文,根據(jù)流表進(jìn)行轉(zhuǎn)發(fā);如果是IPv6報(bào)文并且是入口交換機(jī)則插入IPv4隧道頭并轉(zhuǎn)發(fā)、如果是IPv6報(bào)文并且是中間交換機(jī)則根據(jù)IPv4隧道頭進(jìn)行轉(zhuǎn)發(fā),如果是IPv6報(bào)文并且是出口交換機(jī)則剝離IPv4隧道頭進(jìn)行轉(zhuǎn)發(fā)。這樣就可以配合SDN控制器的工作,針對(duì)流表進(jìn)行報(bào)文的轉(zhuǎn)發(fā)任務(wù)。有效實(shí)現(xiàn)IPv4向IPv6的過渡,并且可以有效處理IPv4報(bào)文和IPv6報(bào)文。
SDN控制器應(yīng)支持基于SDN的IPv4向IPv6過渡技術(shù)算法配置任務(wù)序列,應(yīng)包括:基于SDN的IPv4向IPv6過渡功能打開或關(guān)閉。
所述IPv6轉(zhuǎn)發(fā)表包括IPv6地址、IPv6前綴長度、類型、交換機(jī)id、交換機(jī)端口;其中,
所述IPv6地址用于表明IPv6地址;
所述IPv6前綴長度用于表明IPv6前綴長度;
所述類型包括靜態(tài)和動(dòng)態(tài)類型;
所述交換機(jī)id用于表明SDN交換機(jī)的id。
所述交換機(jī)端口用于表明SDN交換機(jī)的端口。
基于SDN網(wǎng)絡(luò)的IPv6轉(zhuǎn)發(fā)表格式如下表所示:
SDN交換機(jī)和SDN控制器支持?jǐn)U充流表,其定義如下表所示:
從SDN交換機(jī)到控制器的私有擴(kuò)展Experimenter報(bào)文的格式如圖4所示。Experimenter值為255需要向ONF組織申請(qǐng)。Experimenter type值為1表明是從SDN交換機(jī)方向到控制器。私有擴(kuò)展Experimenter報(bào)文由SDN交換機(jī)上報(bào)給控制器。包括:端口的IPv4或IPv6地址、端口的掩碼或前綴長度。
下面,做一個(gè)具體的模擬測(cè)試,搭建如圖5所示的測(cè)試環(huán)境。
其中包括SDN交換機(jī)(S0、S1、S2、S3)、SDN控制器、IPv6客戶端A、IPv6服務(wù)器、抓包工具。
SDN交換機(jī)S1作為入口交換機(jī),SDN交換機(jī)S3作為出口交換機(jī),SDN交換機(jī)S0、S2可作為中間交換機(jī),IPv6客戶端A向SDN交換機(jī)S1發(fā)送IPv6報(bào)文,如果SDN交換機(jī)S1進(jìn)行流表匹配后是匹配的情況,則會(huì)插入IPv4隧道頭并轉(zhuǎn)發(fā),如果不配的情況,則IPv6報(bào)文會(huì)被發(fā)送至SDN控制器,SDN控制器從SDN交換機(jī)接收未匹配流表的IPv6報(bào)文,提取源IP、目的IP,SDN控制器根據(jù)目的IP查詢IPv6轉(zhuǎn)發(fā)表,獲得出口交換機(jī)的出端口,SDN控制器根據(jù)查詢結(jié)果和網(wǎng)絡(luò)拓?fù)?,?jì)算轉(zhuǎn)發(fā)路徑,并下流表,由于是入口交換機(jī)則會(huì)打上對(duì)報(bào)文打上IPv4隧道頭并轉(zhuǎn)發(fā),當(dāng)在SDN交換機(jī)S3的時(shí)候,同樣要判斷是否匹配流表,如果匹配則剝離IPv4隧道頭進(jìn)行轉(zhuǎn)發(fā),不匹配則還是要發(fā)送至SDN控制器,SDN控制器根據(jù)目的IP查詢IPv6轉(zhuǎn)發(fā)表,獲得出口交換機(jī)的出端口,SDN控制器根據(jù)查詢結(jié)果和網(wǎng)絡(luò)拓?fù)?,?jì)算轉(zhuǎn)發(fā)路徑,并下流表,由于是出口交換機(jī)則會(huì)剝離IPv4隧道頭并轉(zhuǎn)發(fā)。
因此,IPv6客戶端A可以訪問IPv6服務(wù)器,抓包工具表明隧道報(bào)文是外層是IPv4頭,內(nèi)層是IPv6頭。
傳統(tǒng)IPv6over IPv4隧道是靜態(tài)建立的,當(dāng)網(wǎng)絡(luò)發(fā)生變化的時(shí)候,需要重新拆除和建立。而且隧道拆除和建立的配置需要涉及到整個(gè)轉(zhuǎn)發(fā)節(jié)點(diǎn),配置復(fù)雜而且繁瑣。
而本發(fā)明是基于SDN架構(gòu)的,IPv6over IPv4隧道根據(jù)IPv6的轉(zhuǎn)發(fā)表自動(dòng)建立,如果網(wǎng)絡(luò)拓?fù)浒l(fā)生變化,交換機(jī)需立即通知SDN控制器,更新IPv6的轉(zhuǎn)發(fā)表,同時(shí)自動(dòng)拆除舊的IPv6隧道,建立新的IPv6隧道。整個(gè)過程無需人為干預(yù),配置簡單,本發(fā)明中SDN控制器對(duì)流表的控制,即,SDN控制器配置流表,然后根據(jù)流表可以判別入口交換機(jī)。
本文中所描述的具體實(shí)施例僅僅是對(duì)本發(fā)明精神作舉例說明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對(duì)所描述的具體實(shí)施例做各種的修改或補(bǔ)充或采用類似的方式替代,但并不會(huì)偏離本發(fā)明的精神或者超越所附權(quán)利要求書所定義的范圍。