網絡路徑計算方法及裝置的制造方法
【技術領域】
[0001] 本發明涉及通信領域,具體而言,涉及一種網絡路徑計算方法及裝置。
【背景技術】
[0002] 由于現在的網絡暴露出了越來越多的弊病W及人們對網絡性能的需求越來越高, 研究人員不得不把很多復雜功能加入到路由器的體系結構當中,例如0SPF(化en化ortest Path First,開放式最短路徑優先)、BGP(Border Gateway Protocol,邊界網關協議)、組播、 區分服務、流量工程、NAT (Network AcMress, Translation,網絡地址轉換)、防火墻、MPLS (Multi-protocol L油el Switching,多協議標記交換)等等。該就使得路由器等交換設備 越來越膝腫而且性能提升的空間越來越小。
[0003] 然而與網絡領域的困境截然不同的是,計算機領域實現了日新月異的發展。仔細 回顧計算機領域的發展,不難發現其關鍵在于計算機領域找到了一種簡單可用的硬件底層 (X86指令集)。由于有了該樣一種公用的硬件底層,所W在軟件方面,不論是應用程序還 是操作系統都取得了飛速的發展。現在很多主張重新設計計算機網絡體系結構的人±認 為;網絡可W復制計算機領域的成功來解決現在網絡所遇到的所有問題。在該種思想的指 導下,將來的網絡必將是該樣的:底層的數據通路(交換機、路由器)是"啞的、簡單的、最小 的",并定義一個對外開放的關于流表的公用的API(ApplicationProgramInte;rface,應 用程序接口),同時采用控制器來控制整個網絡。未來的研究人員就可W在控制器上自由的 調用底層的API來編程,從而實現網絡的創新。
[0004] 基于上述的理念,出現了SDN (Software Defined Network,軟件定義網絡),其最 初是由美國斯坦福大學clean slate研究組提出的一種新型網絡創新架構。目前,其核也 技術化enFlow協議,通過將網絡設備控制面(包含化enFlow Controller)與數據面(包含 化enFlow Cap油le Switch)分離開來,從而實現了網絡流量的靈活控制,為核也網絡及應 用的創新提供了良好的平臺。
[0005] 化enFlow協議用來描述控制器(控制單元)和交換機(轉發單元)之間交互所用信 息的標準,W及控制器和交換機的接口標準。協議的核也部分是用于化enFlow協議信息結 構的集合。當OpenFlow交換機和控制器建立TCP(TransmissionControlProtocol,傳 輸控制協議)連接并握手成功后,控制器通過發送請求消息,獲得OFS(化enFlowSwitch, 化enFlow交換機,也稱為化taPath(數據路徑))的能力,OFS(OF交換機)的能力包括:
[0006] (1)交換機特征;支持的最大buffer、支持的表數目、統計能力(包括流統計能力、 表統計能力、端口統計能力、組統計能力、隊列統計能力)、IP分片重組能力、環路避免能 力;
[0007] (2)流表特征;流表的最大條目數量、支持匹配的域和掩碼(包括:端口、元數據、 報文字段(DMAC、SMAC、化her Type、VLAN ID、VLAN priority、IP DSCP、IP ECN、IP PROTO、 SIP、DIP、TCP/UDP源端 口號和目的端 口號、ICMP type、ICMP code、ARP opcode、ARP source IPv4address、ARP target IPv4address、ARP source hardware address、ARP target hardwareaddress、IPv6sourceaddress、IPv6destinationaddress、IPv6FlowLabel、ICMPv6type、ICMPv6code、TargetaddressforND、Sourcelink-layerforND、Target link-layerforND、MPLS1 油el、MPLSTC、MPLSBoSbit、PBBI-SID、Logical化 Metadata、IPv犯xtensionHeaderpseud〇-field、PBBUCAheaderfield等))、允許匹配的 metadata(兀數據)、允許寫入的metadata、支持的instructions(指令列表,包括;Meter、 Apply-Actions、Clear-Actions、Write-Actions、Write-Metadata、Got〇-Table等)、支持的 actions(動作列表,包括;0u1:put、Set-Queue、D;rop、G;roup、I\ish-Tag、Pop-Tag、Set-Field、 Qiange-ITL等);t油le-miss(表未命中)能力;
[0008] (3)組表特征(groupfeatures);支持的組表條目數量、組表支持的actions(動 作包括;0u1:put、Set-Queue、Drop、Group、化sh-Tag、Pop-Tag、Set-Field、Qiange-ITL等)、 支持的組表類型(包括;〇FPGT_ALL、0FPGT_SELECT、OFPGT_INDIRECT、0FPGT_FF),組表能力 WFPGFC_WLECT_WEIGHT、OFPGFC_WLECT_LIVE肥SS、0FPGFC_CHAI…NG、OFPGFC_CHAINING_ C肥CKS)等;
[0009] (4)meter表特征(meterfea化res);meter表數量、支持的帶寬類型(包括報文丟 棄、DSCPremark等)、max_color(最大顏色)等。
[0010] 圖1是根據相關技術的路徑計算結果及流表配置示意圖,請參考圖1,在圖1所示 的路徑計算結果及流表配置過程中,SDN網絡的路徑計算方法主要考慮了鏈路代價(比如跳 數)、鏈路帶寬、鏈路屬性等外部約束條件;當SDN控制器根據現有的路徑算法計算出轉發 路徑后,將依據一定的策略下發流表到路徑上的各個化enFlow交換機。但由于各個交換 機的能力不同,交換機可能不支持控制器的轉發要求,從而流表配置失效,導致報文轉發失 敗,即使此時交換機上報流表配置錯誤消息給控制器,控制器也不能計算出一條新的路徑。
[0011] 針對相關技術中由于各個交換機的能力不同造成流表配置失效而導致控制器無 法計算出新路徑的問題,目前尚未提出有效的解決方案。
【發明內容】
[0012] 本發明提供了一種網絡路徑計算方法及裝置,W至少解決上述由于各個交換機的 能力不同造成流表配置失效而導致控制器無法計算出新路徑的問題。
[0013] 根據本發明的一個方面,提供了一種網絡路徑計算方法,包括:網絡控制節點根據 轉發節點的能力信息和約束條件計算源節點到目的節點的轉發路徑。
[0014] 優選地,該方法適用于軟件定義網絡(SDN),網絡控制節點包括;SDN控制器,轉發 節點包括;OF交換機。
[0015] 優選地,能力信息包括;OF交換機的能力信息,其中,OF交換機的能力信息包括W 下至少之一;交換機特征、流表特征、組表特征、meter表特征。
[0016] 優選地,交換機特征包括W下至少之一;支持的最大buffer、支持的表數目、統計 能力、IP分片重組能力、環路避免能力;流表特征包括W下至少之一;流表的最大條目數 量、支持匹配的域和掩碼、允許匹配的元數據、允許寫入的元數據、支持的instructions、支 持的actions、t油le-miss能力;組表特征包括W下至少之一;支持的組表條目數量、組表 支持的actions、支持的組表類型、組表能力;meter表特征包括W下至少之一;meter表數 量、支持的帶寬類型、max_color。
[0017] 優選地,約束條件包括:鏈路代價,其中,鏈路代價包括;跳數;或者,約束條件包 括:鏈路代價和W下至少之一:鏈路帶寬、鏈路屬性、管理權重、網絡資源信息,其中,鏈路 屬性包括;鏈路優先級。
[0018] 優選地,SDN控制器計算轉發路徑時采用最短路徑優先/帶約束最短路徑優先 (SPF/CSPF)選路算法。
[0019] 根據本發明的另一方面,提供了一種網絡路徑計算裝置,包括:計算模塊,用于根 據轉發節點的能力信息和外部約束條件計算源節點到目的節點的轉發路徑。
[0020] 優選地,該裝置適用于軟件定義網絡(SDN),網絡控制節點包括;SDN控制器,轉發 節點包括;OF交換機。
[0021] 優選地,能力信息包括;OF交換機的能力信息,其中,OF交換機的能力信息包括W 下至少之一;交換機特征、流表特征、組表特征、meter表特征。
[0022] 優選地,交換機特征包括W下至少之一;支持的最大buffer、支持的表數目、統計 能力、IP分片重組能力、環路避免能力;流表特征包括W下至少之一;流表的最大條目數 量、支持匹配的域和掩碼、允許匹配的元數據、允許寫入的元數據、支持的instructions、支 持的actions、t油le-miss能力;組表特征包括W下至少之一;支持的組表條目數量、組表 支持的actions、支持的組表類型、組表能力;meter表特征包括W下至少之一;meter表數 量、支持的帶寬類型、max_color。
[0023] 優選地,約束條件包括:鏈路代價,其中,鏈路代價包括;跳數;或者,約束條件包 括;鏈路代價和W下至少之一;鏈路帶寬、鏈路屬性、管理權重、網絡資源信息,其中,鏈路 屬性包括;鏈路優先級。
[0024] 優選地,計算模塊計算轉發路徑時采用最短路徑優先/帶約束最短路徑優先SPF/ CSPF選路算法。
[00巧]通過本發明,采用網絡控制節點在現有的約束條件的基礎上,將轉發節點的能力 信息同時作為計算網絡路徑的約束條件的方式,解決了相關技術中由于各個交換機的能力 不同造成流表配置失效而導致控制器無法計算出新路徑的問題,進而達到了提高SDN網絡 的路徑計算的正確性和網絡應用性的效果。
【附圖說明】
[0026] 此處所說明的附圖用來提供對本發明的進一步理解,構成本申請的一部分,本發 明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中:
[0027]圖1是根據相關技術的路徑計算結果及流表配置示意圖;
[0028] 圖2是根據本發明實施例的網絡路徑計算方法流程圖;
[0029] 圖3是根據本發明實施例的網絡路徑計算裝置的結構框圖;
[0030] 圖4是根據本發明優選實施例的基于交換機能力的路徑計算結果及流表配置示 意圖;
[0031] 圖5是根據本發明優選實施例的具備NAT能力的交換機及路徑計算流程圖。
【具體實施方式】
[0032] 下文中將參考附圖并結合實施例來詳細說明本發明。需要說明的是,在不沖突的 情況下,本申請中的實施例及實施例中的特征可w相互組合。
[0033]為了解決上述技術問題,本發明提供的技術方案的主要思路是;提出將交換機的 能力信息作為路徑計算的約束條件從而結合當前的部分或約束條件。通過該樣的路徑計算 方式,從而可W提高路徑計算的正確性和網絡(例如SDN網絡,當然實際應用中并不局限于 此網絡,其它網絡均可W采用該方式計算網絡路徑)的可用性。