本發(fā)明涉及計算機網絡移動性管理領域,尤其涉及一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性處理方法及裝置。
背景技術:
近年來,隨著移動互聯(lián)網及物聯(lián)網的快速發(fā)展,網絡中的接入設備中移動終端的比例大幅增長,并且已經超過了固定終端。這使得網絡對終端移動性的支持變得尤其重要。在目前的主流移動網絡中,無論是傳統(tǒng)大規(guī)模的移動通信網絡,還是開放便利的無線局域網(WLAN),其背后的回傳網絡都采用了互聯(lián)網中基于TCP/IP協(xié)議的報文傳輸機制。基于TCP/IP協(xié)議網絡,在物理層可以支持多種有線、無線通信技術,而在網絡層采用統(tǒng)一的IP協(xié)議將各種方式接入的數(shù)據(jù)進行統(tǒng)一,實現(xiàn)互通。因此,在網絡層(IP層)提供移動性管理的方案,向下支持各種底層接入技術,向上支持各類應用,成為了移動網絡中的主流移動性解決方案。
基于TCP/IP協(xié)議的網絡在對于移動流量的支持上具有原生問題——IP地址的雙重作用。IP地址在網絡協(xié)議結構中既是對網絡終端身份的標識,又是對網絡終端接入位置的標識。這使得,如果沒有額外的移動性管理方案輔助,當網絡中終端接入位置發(fā)生改變時,終端的標識也要隨之而變。這在傳統(tǒng)互聯(lián)網接入的終端大量是體型龐大不便于移動的主機時是沒有問題的,但隨著移動終端的出現(xiàn),近幾十年來TCP/IP網絡中的移動性管理方案也大量涌現(xiàn)。
常見的移動性管理協(xié)議可以被分為基于網絡的移動性管理協(xié)議和終端參與的移動性管理協(xié)議。終端參與的協(xié)議中移動終端和網絡實體均需要參與到移動性管理的信令交互過程中,在基于網絡的協(xié)議中,只有網絡實體才參與移動性管理的信令交互過程。在傳統(tǒng)TCP/IP網絡中,大部分移動性管理協(xié)議是終端參與的。比如大部分的移動IP系列協(xié)議,包括MIPv4/MIPv6/FMIPv6/DSMIPv6等,他們通過給用戶分配兩個標識分別標識用戶的身份和位置,不同的標識需要引入新的代理實體來進行維護和識別。數(shù)據(jù)也需要交由代理實體進行轉發(fā),因而存在路徑非最優(yōu),也就是“三角路由”的問題。又如另一類協(xié)議試圖在TCP/IP協(xié)議基礎上增加新的層次,來解決IP地址的多重作用問題,如:HIP/SHIM6/ILNP等方案。這類方案對網絡和終端的傳統(tǒng)協(xié)議棧有著較大的改動,因此在實際部署方面存在較大困難。當然終端參與的移動性管理協(xié)議還有很多,但其他方案大多基于這兩類方案進行優(yōu)化和擴展,他們面臨的共同問題就是對終端協(xié)議棧的修改使得方案難以與現(xiàn)有網絡和現(xiàn)有終端兼容,實際部署困難。另一類移動性管理協(xié)議是基于網絡的,如:PMIPv6、LISP和基于這兩個方案的衍生方案。PMIPv6在網絡中引入本地移動錨點(LMA)和移動接入網管(MAG)兩個實體。其中LMA類似與家鄉(xiāng)代理,維護移動結點的綁定狀態(tài)。MAG負責移動結點的移動管理。MAG與LMA之間建立雙向的隧道,由LMA和MAG共同來負責傳遞用戶數(shù)據(jù)。數(shù)據(jù)在網絡中的位置標識由MAG端配置的全局地址代理轉交地址(PCoA)充當。用戶移動后的數(shù)據(jù)也由移動后所在的新的MAG負責發(fā)送和接收。作為基于網絡的移動性管理協(xié)議PMIPv6在移動的過程中避免了移動終端的參與。但代理移動IPv6中,本地移動錨點承擔了大量信令和隧道的處理,并且很容易成為用戶移動數(shù)據(jù)集中的瓶頸所在。The Locator/ID Separation Protocol(LISP)是一種基于網絡側的主機標識符與位置標識符分離的協(xié)議。LISP協(xié)議中網絡悲憤為核心網絡和邊緣網絡兩部分,分別使用終端的路由位置標識符(RLOC)和終端身份標識符(EID)作為終端的位置標識符。其中主機的RLOC在核心網絡中有相關記錄,而EID則不由網絡維持。LISP在網絡中引入隧道路由器ITR以及出口隧道路由器ETR進行數(shù)據(jù)包在位置標識符和身份標識符上的解耦和分離,并且通過他們實現(xiàn)EID和RLOC的映射解析。在核心網中LISP通過IP-in-IP的方式實現(xiàn)了數(shù)據(jù)包在核心網中的路由與轉發(fā)。LISP作為一種基于網絡的移動性管理協(xié)議最大的優(yōu)點是無需進行主機測的改動,另外對于RLOC的分配也使得核心網中的路由表可以具有更高的聚合特性,一定程度上可以減小核心網中路由表的數(shù)量。但LISP由于需要維護EID/RLOC的映射關系,仍需要xTR之間維持全網影射關系,這在可擴展性和主機移動時綁定和映射更新的開銷方面都有著一定的問題。后來也有學者提出LISP-MN方案,讓移動結點具有永久性EID,作為身份標識。在移動結點進入新的網絡,它收到新的轉交地址并且注冊為本地位置LLOC,LLOC在映射系統(tǒng)中與RLOC一起綁定。但LISP-MN需要移動結點本身作為一個單獨的LISP域并具有對進出口流量的處理功能。從這一點講,LISP-MN本身是基于主機的移動性管理方案,同樣具有需要修改終端網絡協(xié)議棧,難以部署應用的問題。
隨著各類移動終端的爆炸性增長,使得網絡移動流量飛速增長。移動網絡為承載激增的流量需求,需要更加簡單,靈活,輕量的移動性管理方案,在用戶流量和信令開銷方面都要具有較好的性能,同時只有基于網絡實現(xiàn),才易于對現(xiàn)有移動終端保持兼容性。近年來,軟件定義網絡(SDN),為解決網絡移動性問題提供了機會。軟件定義網絡中,控制平面和轉發(fā)平面獨立存在,這為移動流量和信令的分離提供了機會??刂破鲗W絡設備的感知能力大幅提高。使得網絡有了集中的大腦,這正好為解決移動性協(xié)議中昂貴的信令開銷提供了條件。移動流量也可以跟據(jù)靈活調整的流表,選擇最優(yōu)的路徑轉發(fā)到目的地?;贠penFlow協(xié)議實現(xiàn)的網絡要求網絡中的轉發(fā)設備支持OpenFlow協(xié)議。在更加靈活的網絡中,交換設備和控制器的性能會與流表的數(shù)量和流表的計算復雜度密切相關。在已有的多數(shù)基于軟件定義網絡的移動性管理方案中,由于終端移動過程會改變相關數(shù)據(jù)包的轉發(fā)路徑,因此大部分方案都需要對數(shù)據(jù)包經過的路徑上的全部結點下發(fā)流表,以匹配新的轉發(fā)路徑。有的方案為了優(yōu)化下發(fā)的流表數(shù)和規(guī)模,嘗試合并相同的路徑,并通過重新分配位置標識的方式減少下發(fā)流表的數(shù)量,但在網絡中尋找合適的可合并路徑本身就是NP問題,計算復雜度高,會增加移動性管理中切換過程的耗時。
技術實現(xiàn)要素:
本發(fā)明提供一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性處理方法及裝置,用于解決現(xiàn)有技術中為了優(yōu)化下發(fā)的流表數(shù)和規(guī)模,嘗試合并相同的路徑,并通過重新分配位置標識的方式減少下發(fā)流表的數(shù)量,進而造成計算復雜度高和增加移動性管理中切換過程的耗時的問題。
第一方面,本發(fā)明提供一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性處理方法,包括:
當確定多次接入網絡的第一主機接入網絡并向第二主機發(fā)送數(shù)據(jù)包傳輸請求后,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的邊緣交換機的數(shù)據(jù)通道,供第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;向第二主機接入的邊緣交換機下發(fā)第二流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表;
控制器向第二主機所接入的邊緣交換機下發(fā)第三流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表;向第一主機所接入的邊緣交換機下發(fā)第四流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
可選地,當確定接入網絡的第一主機為第一次接入網絡且向第二主機發(fā)出第一主機發(fā)送的數(shù)據(jù)包傳輸請求之后,控制器向第一主機所接入的邊緣交換機下發(fā)匹配源MAC地址為第一主機MAC地址且接入端口為所述邊緣交換機關聯(lián)端口的流表。
可選地,還包括:
當確定第二主機移動后重新接入到原邊緣交換機時,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的原邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;向第二主機接入的原邊緣交換機下發(fā)第二流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
可選地,還包括:
當確定第二主機移動后接入到新邊緣交換機時,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的新邊緣交換機的數(shù)據(jù)通道,供第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的新邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;向第二主機接入的新邊緣交換機下發(fā)第二流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表;
控制器向第二主機所接入的新邊緣交換機下發(fā)第三流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表;向第一主機所接入的邊緣交換機下發(fā)第四流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
可選地,在流表更新過程中,控制器不對所述內部交換機下發(fā)更新流表指令。
第二方面,本發(fā)明提供一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性管理裝置,包括:
第一流表下發(fā)模塊,用于當確定多次接入網絡的第一主機接入網絡并向第二主機發(fā)送數(shù)據(jù)包傳輸請求后,向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的邊緣交換機的數(shù)據(jù)通道,供第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;
第二流表下發(fā)模塊,用于向第二主機接入的邊緣交換機下發(fā)第二流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表;
第三流表下發(fā)模塊,用于向第二主機所接入的邊緣交換機下發(fā)第三流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表;
第四流表下發(fā)模塊,用于向第一主機所接入的邊緣交換機下發(fā)第四流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
可選地,所述第一流表下發(fā)模塊還用于:當確定接入網絡的第一主機為第一次接入網絡且向第二主機發(fā)出數(shù)據(jù)包傳輸請求之后,控制器向第一主機所接入的邊緣交換機下發(fā)匹配源MAC地址為第一主機MAC地址且接入端口為所述邊緣交換機關聯(lián)端口的流表。
可選地,還包括:
第一流表下發(fā)模塊,用于當確定第二主機移動后重新接入到原邊緣交換機時,向第一主機所接入的邊緣交換機下發(fā)第一流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的原邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;
第二流表下發(fā)模塊,用于向第二主機接入的原邊緣交換機下發(fā)第二流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
可選地,還包括:
第一流表下發(fā)模塊,用于當確定第二主機移動后接入到新邊緣交換機時,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的新邊緣交換機的數(shù)據(jù)通道,供第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的新邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;
第二流表下發(fā)模塊,用于向第二主機接入的新邊緣交換機下發(fā)第二流表,以使所述第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表;
第三流表下發(fā)模塊,用于向第二主機所接入的新邊緣交換機下發(fā)第三流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表;
第四流表下發(fā)模塊,用于向第一主機所接入的邊緣交換機下發(fā)第四流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
可選地,在流表更新過程中,流表下發(fā)模塊不對所述內部交換機下發(fā)更新流表指令。
由上述技術方案可知,本發(fā)明提供的一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性處理方法及裝置,當移動主機發(fā)生位置變動時,通過軟件定義網絡中的控制器北向應用僅在移動主機及數(shù)據(jù)包發(fā)送主機附著的邊緣交換機上更新流表,而無需變更路徑上其他交換機的流表,從而達到了減少發(fā)流表數(shù)和加快切換速度的效果。
附圖說明
圖1為本發(fā)明實施例1提供的基于OpenFlow協(xié)議的ID/Locator分離的IP移動性處理方法的流程示意圖;
圖2為本發(fā)明實施例軟件定義網絡結構示意圖;
圖3為本發(fā)明實施例2提供的基于OpenFlow協(xié)議的ID/Locator分離的IP移動性管理裝置的結構示意圖。
具體實施方式
下面結合附圖和實施例,對本發(fā)明的具體實施方式作進一步詳細描述。以下實施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。
圖1示出了本發(fā)明實施例1提供的一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性處理方法,包括以下處理操作:
11、當確定多次接入網絡的第一主機接入網絡并向第二主機發(fā)送數(shù)據(jù)包傳輸請求后,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的邊緣交換機的數(shù)據(jù)通道,供第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表。
如圖2所示在軟件定義網絡結構中,其結構由控制器和交換機兩部分構成。所述交換機指任何支持OpenFlow協(xié)議的南向接口的具有轉發(fā)功能的網絡設備。這類設備可以但不限于支持OpenFlow協(xié)議的交換機,或支持OpenFlow協(xié)議的無線接入點,亦或是無線通信網絡中的核心網網關設備等等,以下均稱這類設備為OF交換機。其中控制器通過南向控制接口與OF交換機相連。OF交換機之間互聯(lián)形成數(shù)據(jù)轉發(fā)通路。所述OF交換機分為兩類,其中一類OF交換機其部分端口上有終端設備或其他網絡流量接入的OF交換機,由于這類OF交換機在邏輯上處于網絡邊緣,會作為用戶接入網絡入口OF交換機,稱這類交換機為邊緣交換機(如圖中標號所示S001-S006)。另一類OF交換機,只與其他交換機相連,用作流量的傳遞路徑,由于這類OF交換機在邏輯上處于網絡內部,沒有用戶直接通過這類交換機接入,稱這類交換機為內部交換機。所有交換機在初始化時,由控制器下發(fā)靜態(tài)流表,使得每個交換機上都有到任何一個邊緣交換機的轉發(fā)規(guī)則。這些轉發(fā)規(guī)則構成到某一邊緣交換機的路徑,該路徑可以不唯一,但至少存在一條可達路徑。
本發(fā)明實施例1所述第一主機向第二主機轉發(fā)數(shù)據(jù),第一主機和第二主機均接入軟件定義網絡結構中的邊緣交換機。
第一主機接入網絡并向第二主機發(fā)送數(shù)據(jù)包傳輸請求后,控制器獲得請求后,獲知轉發(fā)的數(shù)據(jù)包從第一主機接入的邊緣交換機到第二主機接入的邊緣交換機。
此時,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,第一主機所接入的邊緣交換機根據(jù)第一流表將第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表。
12、控制器向第二主機接入的邊緣交換機下發(fā)第二流表,以使第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
在本步驟中,需要說明的是,由于第一主機發(fā)送的數(shù)據(jù)包暫時在第二主機接入的邊緣交換機上。因此,控制器需向第二主機接入的邊緣交換機下發(fā)第二流表,第二主機接入的邊緣交換機根據(jù)第二流表將第一主機發(fā)送的數(shù)據(jù)包按照第二主機與邊緣交換機的接入端口傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
另外,當確定第二主機移動后重新接入到原邊緣交換機時,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,第一主機所接入的邊緣交換機根據(jù)第一流表將第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的原邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;向第二主機接入的原邊緣交換機下發(fā)第二流表,第二主機接入的原邊緣交換機根據(jù)第二流表將第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
當確定第二主機移動后接入到新邊緣交換機時,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的新邊緣交換機的數(shù)據(jù)通道,第一主機所接入的邊緣交換機根據(jù)第一流表將第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的新邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;向第二主機接入的新邊緣交換機下發(fā)第二流表,第二主機接入的新邊緣交換機根據(jù)第二流表將第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
13、控制器向第二主機所接入的邊緣交換機下發(fā)第三流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表。
在本步驟中,控制器向第二主機所接入的邊緣交換機下發(fā)第三流表,第二主機所接入的邊緣交換機根據(jù)第三流表將第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表。
14、控制器向第一主機所接入的邊緣交換機下發(fā)第四流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
在本步驟中,需要說明的是,由于第二主機發(fā)送的數(shù)據(jù)包暫時在第一主機接入的邊緣交換機上??刂破飨虻谝恢鳈C所接入的邊緣交換機下發(fā)第四流表,第一主機所接入的邊緣交換機根據(jù)第四流表將第二主機發(fā)送的數(shù)據(jù)包按照第二主機與邊緣交換機的接入端口傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
另外,當確定第二主機移動后接入到新邊緣交換機時,控制器向第二主機所接入的新邊緣交換機下發(fā)第三流表,第二主機所接入的新邊緣交換機根據(jù)第三流表將第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表;向第一主機所接入的邊緣交換機下發(fā)第四流表,第一主機所接入的邊緣交換機根據(jù)第四流表將第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
本發(fā)明實施例1提供的一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性處理方法,當移動主機發(fā)生位置變動時,通過軟件定義網絡中的控制器北向應用僅在移動主機及數(shù)據(jù)包發(fā)送主機附著的邊緣交換機上更新流表,而無需變更路徑上其他交換機的流表,從而達到了減少發(fā)流表數(shù)和加快切換速度的效果。
圖3示出了本發(fā)明實施例2提供一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性管理裝置,包括:
第一流表下發(fā)模塊21,用于當確定多次接入網絡的第一主機接入網絡并向第二主機發(fā)送數(shù)據(jù)包傳輸請求后,向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的邊緣交換機的數(shù)據(jù)通道,供第一數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;
第二流表下發(fā)模塊22,用于向第二主機接入的邊緣交換機下發(fā)第二流表,以使第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表;
第三流表下發(fā)模塊23,用于向第二主機所接入的邊緣交換機下發(fā)第三流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表;
第四流表下發(fā)模塊24,用于向第一主機所接入的邊緣交換機下發(fā)第四流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
另外,在主機第一次接入網絡的情況下,所述第一流表下發(fā)模塊還用于:當確定接入網絡的第一主機為第一次接入網絡且向第二主機發(fā)出數(shù)據(jù)包傳輸請求之后,控制器向第一主機所接入的邊緣交換機下發(fā)匹配源MAC地址為第一主機MAC地址且接入端口為所述邊緣交換機關聯(lián)端口的流表。
在第二主機移動后接入的邊緣交換機不變的情況下,第一流表下發(fā)模塊,用于當確定第二主機移動后重新接入到原邊緣交換機時,向第一主機所接入的邊緣交換機下發(fā)第一流表,以使第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的原邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;
第二流表下發(fā)模塊,用于向第二主機接入的原邊緣交換機下發(fā)第二流表,以使第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
在第二主機移動后接入的邊緣交換機變化的情況下,第一流表下發(fā)模塊,用于當確定第二主機移動后接入到新邊緣交換機時,控制器向第一主機所接入的邊緣交換機下發(fā)第一流表,以建立第一主機發(fā)送數(shù)據(jù)包到達第二主機所接入的新邊緣交換機的數(shù)據(jù)通道,供第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C所接入的新邊緣交換機上,所述第一流表為匹配目的MAC地址為第二主機MAC地址的流表;
第二流表下發(fā)模塊,用于向第二主機接入的新邊緣交換機下發(fā)第二流表,以使第一主機發(fā)送的數(shù)據(jù)包傳輸?shù)降诙鳈C上,所述第二流表為匹配目的MAC地址為第二主機MAC地址且接入端口為交換機關聯(lián)端口的流表;
第三流表下發(fā)模塊,用于向第二主機所接入的新邊緣交換機下發(fā)第三流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C所接入的邊緣交換機上,所述第三流表為匹配源MAC地址為第一主機MAC地址的流表;
第四流表下發(fā)模塊,用于向第一主機所接入的邊緣交換機下發(fā)第四流表,以使第二主機發(fā)送的數(shù)據(jù)包傳輸?shù)降谝恢鳈C上,所述第四流表為匹配源MAC地址為第一主機MAC地址且接入端口為交換機關聯(lián)端口的流表。
上述裝置與本發(fā)明實施例1所述方法的執(zhí)行原理相同,故在此不再贅述。
本發(fā)明實施例2提供的一種基于OpenFlow協(xié)議的ID/Locator分離的IP移動性管理裝置,當移動主機發(fā)生位置變動時,通過軟件定義網絡中的控制器北向應用僅在移動主機及數(shù)據(jù)包發(fā)送主機附著的邊緣交換機上更新流表,而無需變更路徑上其他交換機的流表,從而達到了減少發(fā)流表數(shù)和加快切換速度的效果。
此外,本領域的技術人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內并且形成不同的實施例。例如,在下面的權利要求書中,所要求保護的實施例的任意之一都可以以任意的組合方式來使用。
應該注意的是上述實施例對本發(fā)明進行說明而不是對本發(fā)明進行限制,并且本領域技術人員在不脫離所附權利要求的范圍的情況下可設計出替換實施例。在權利要求中,不應將位于括號之間的任何參考符號構造成對權利要求的限制。單詞“包含”不排除存在未列在權利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。
本領域普通技術人員可以理解:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明權利要求所限定的范圍。