交換機系統以及監視集中控制方法
【專利說明】交換機系統以及監視集中控制方法
[0001]本申請是2013年4月15日提交的、申請號為201180049756.X、發明名稱為“交換機系統以及監視集中控制方法”的專利申請的分案申請。
技術領域
[0002]本發明涉及交換機系統,特別地涉及執行路由控制的交換機系統。
【背景技術】
[0003]在傳統技術中,“sFlow”、“RSPAN”(遠程交換端口分析器)的監視功能等存在于交換機系統的每個交換機中。因為此原因,每個交換機可以執行監視,但執行監視功能的集中控制是困難的。
[0004]盡管存在可以應用集中控制的功能(例如“sFlow”),但存在很多限制(每個交換機需要被配置,以及監視的粒度自身是有限的),使得對于監視的集中控制不存在自由度。
[0005]此外,即使可以將集中控制應用到該功能中,該功能僅是監視的集中控制,并且路由控制不能與該功能耦合。因此,不能基于監視結果改變監視的粒度,并且監視結果不能反映到網絡的路由控制上。
[0006]當今,已經研宄使用的開放流(OpenFlow)技術用于發射機設備的控制協議的路由控制作為網絡通信的路由控制技術之一。在非專利文獻I和2中描述了開放流技術的細節。使用開放流技術的路由控制稱為開放流網絡。
[0007]在開放流網絡中,控制器(例如0FC(開放流控制器))通過操控交換機的流表(Flow Table)來控制交換機(例如OFS (OpenFlow交換機))的行為。為了控制器能夠通過使用基于開放流協議的控制消息來控制交換機,控制器和交換機通過安全信道相連。
[0008]開放流網絡中的交換機配置開放流網絡,并且是控制器的控制之下的邊緣交換機和核心交換機。在開放流網絡中,從輸入側邊緣交換機接收分組(通信數據)到從輸出側邊緣交換機發送分組的一系列操作稱為流。
[0009]流表是在其中注冊流條目以定義要對命中的或與預定規則(匹配條件)適配的分組組(分組序列)執行預定動作(預定處理)的表。
[0010]根據在針對每個協議層的分組的首部區域中包含的目的地址、源地址、目的端口和源端口中的任意一個或所有,定義或區分流條目的規則。應當注意,地址包含MAC地址(媒體訪問控制地址)和IP地址(因特網協議地址)。此外,除了上述之外的進入端口的數據可以用作流條目的規則。
[0011]流條目的動作示出操作(例如“向特定端口輸出”、“丟棄”、“重寫首部”)。例如,當流條目的動作中示出了輸出端口的標識數據(輸出端口號等)時,交換機向與該動作對應的端口輸出分組,而當未示出輸出端口的標識數據時,丟棄該分組。或者,當通過流條目的動作示出了首部數據時,交換機基于首部數據重寫分組的首部。
[0012]開放流網絡中的交換機對命中流表上注冊的流條目的規則的分組組執行流條目的動作。
[0013]在使用開放流技術的控制系統中,可以通過獲取每個流條目的統計數據來監視通信。
[0014]然而,在使用開放流技術的控制系統中,統計數據與流的路由控制條目具有一一對應的關系。因此,當知道流的路由控制條目時,需要設置監視的粒度。
[0015]引用列表
[0016][非專利文獻 I] “The OpenFlow switch Consortium”〈//www.0penflowswitch.0rg/>
[0017][非專利文獻 2] αOpenFlow switch Specificat1n Vers1n 1.0.0 (WireProtocol 0x01) December 31,2009,,〈http: / / www.0penf lowswitch.0rg/documents/openflow-spec-vl.0.0.pdf>
【發明內容】
[0018]本發明提供了一種交換機系統,在所述交換機系統中,集中控制可以應用到所述交換機系統的監視中。
[0019]本發明的交換機系統包含交換機、控制器和相鄰交換機。所述交換機根據在所述交換機中的流表上注冊的流條目來傳送分組。當從所述交換機接收到所述分組的查詢時,所述控制器在所述交換機的流表上注冊流條目,所述流條目定義了所述分組的規則(匹配條件)和動作(預定處理)。所述相鄰交換機與所述交換機相連。這里,所述交換機包含用于注冊查詢條目來向所述控制器傳送與所述規則(匹配條件)相對應的所述分組的第一表(圖1至10和圖13至15中的監視表107以及圖16和17中的傳送表A106-1)和用于注冊所述分組傳送條目來向所述相鄰交換機傳送與所述規則(匹配條件)相對應的所述分組的第二表(圖1至10和圖13至15中的傳送表106以及圖16和17中的傳送表B106-2)。
[0020]根據本發明的所述交換機包含:用于注冊查詢條目來向所述控制器傳送與所述規則(匹配條件)相對應的所述分組的第一表、用于注冊所述分組傳送條目來向所述相鄰交換機傳送與所述規則(匹配條件)相對應的所述分組的第二表以及傳送部分,所述傳送部分根據所述查詢條目和所述分組傳送條目中的每個來傳送所述分組。
[0021]在本發明的所述監視集中控制方法中,在交換機中提供第一表作為用于注冊用于向控制器傳送與所述規則(匹配條件)相對應的分組的查詢條目的流表。此外,在所述交換機中提供第二表作為用于注冊用于向所述相鄰交換機傳送與所述規則(匹配條件)相對應的所述分組的分組傳送條目的流表。此外,所述交換機根據在所述流表上注冊的流條目來傳送所述分組。此外,當從所述交換機接收到所述分組的查詢時,所述控制器在所述交換機的流表上注冊流條目,所述流條目定義了所述分組的規則(匹配條件)和動作(預定處理)。
[0022]本發明的程序是用于使交換機執行以下處理的程序:查閱用于注冊查詢條目來向控制器傳送與規則(匹配條件)相對應的分組的第一表;查閱用于注冊分組傳送條目來向相鄰交換機傳送與規則(匹配條件)相對應的所述分組的第二表;以及,根據所述查詢條目和所述分組傳送條目中的每個來傳送所述分組。應當注意,本發明的程序可以存儲在存儲單元和存儲介質中。
[0023]以此方式,可以自由地改變監視的粒度,并且監視結果可以自由地反映到網絡的路由控制上。
【附圖說明】
[0024]圖1是示出了根據本發明的第一示例性實施例的交換機系統的配置的示意圖;
[0025]圖2是示出了在本發明的第一示例性實施例中,當在交換流表上注冊條目時的控制流程的示意圖;
[0026]圖3是示出了在本發明的第一示例性實施例中,當獲取統計數據時的控制流程的示意圖;
[0027]圖4是示出了在本發明的第一示例性實施例中,在根據傳送表傳送分組的情況下的控制流程的示意圖;
[0028]圖5是示出了在本發明的第一示例性實施例中,在監視表上注冊鏡像條目的情況下的控制流程的示意圖;
[0029]圖6是示出了在本發明的第一示例性實施例中,在查詢控制器的情況下的控制流程的示意圖;
[0030]圖7是示出了在本發明的第一示例性實施例中,在監視表上注冊統計條目的情況下的控制流程的示意圖;
[0031]圖8是示出了在本發明的第一示例性實施例中,在向控制器通知統計數據的情況下的控制流程的示意圖;
[0032]圖9是示出了在本發明的第一示例性實施例中,在傳送表上注冊分組傳送條目的情況下的控制流程的示意圖;
[0033]圖1OA是示出了根據本發明的第一示例性實施例的交換機系統的操作的序列圖;
[0034]圖1OB是示出了根據本發明的第一示例性實施例的交換機系統的操作的序列圖;
[0035]圖11是示出了在本發明的第二示例性實施例中,當監視表不存在時,分組傳送中的控制流程的示意圖;
[0036]圖12是示出了在本發明的第二示例性實施例中,當監視表不存在時,在交換機啟動的情況下的控制流程的示意圖;
[0037]圖13是示出了在本發明的第二示例性實施例中,在第一分組傳送的情況下的控制流程的示意圖;
[0038]圖14是示出了在本發明的第二示例性實施例中,在使用監視表的情況下的控制流程的示意圖;
[0039]圖15是示出了根據本發明的第二示例性實施例的交換機系統的操作的序列圖;
[0040]圖16是示出了在本發明的第三示例性實施例中,在第一分組傳送的情況下的控制流程的示意圖;以及
[0041]圖17是示出了在本發明的第三示例性實施例中,當執行路由控制時的情況的示意圖。
【具體實施方式】
[0042][第一示例性實施例]
[0043]在下文中將參考附圖描述本發明的第一示例性實施例。
[0044](系統配置)
[0045]如圖1所示,本發明的第一示例性實施例的交換機系統包含交換機101、控制器102和相鄰交換機103。
[0046]交換機101示出了交換機的主體。應當注意,假定交換機101對應于控制協議(例如,開放流等),并可以從外部控制器改變交換機101以執行分組傳送表和監視表的集中控制。
[0047]控制器102是基于控制協議,并且通過安全信道來控制交換機101。
[0048]相鄰交換機103與交換機101相鄰。
[0049](硬件的闡述)
[0050]作為交換機101和相鄰交換機103的示例,假定開放流交換機。開放流交換機的示例是可以想到的交換機、網絡交換機(網絡交換機)、多層交換機等。針對要支持的OSI參考模型中的(較小的)每一層來對多層交換機分類。主要分類包括:讀取網絡層(第3層)上的數據的層3交換機、讀取傳輸層(第4層)上的數據的層4交換機、讀取應用層(第7層)上的數據的層7交換機(應用交換機)。應當注意,在開放流網絡中,中繼單元(例如,普通路由器和交換集線器)可以用作開放流交換機。此外,交換機101和相鄰交換機103可以是搭建在物理機器上的虛擬交換機。此外,作為交換機101和相鄰交換機103的替代示例,存在可以想到的路由器、代理、網關、防火墻、負荷均衡器(負荷分配設備)、頻帶控制單元(分組定形器)、安全監視和控制(SCADA:監督控制和數據獲取)、看門人、基站、接入點(AP)、電信衛星(CS)或具有多個通信端口的計算機。
[0051]作為控制器102的示例,假定計算機(例如PC(個人計算機))、裝置、工作站、大型機和超級計算機。同樣,控制器102可以是搭建在物理機器上的虛擬機(VM)。
[0052]作為連接交換機101、控制器102和相鄰交換機103的網絡的示例,假定LAN (局域網)。作為另一示例,列舉了:因特網、無線LAN、WAN(廣域網)、骨干網(Backbone)、社區天線電視系統(CATV)電路、固定類型電話網絡、承載電話網、WiMAX(IEEE 802.16a)、3G(第三代移動通信)、租用電路、IrDA(紅外數據協會)、藍牙(注冊商標)、串行通信電路、數據總線等。
[0053]雖然未示出,可以通過基于程序來驅動和執行給定處理的處理器、存儲程序和各種數據的存儲器以及用于通信的接口(I/F)來實現交換機101、控制器102和相鄰交換機103。
[0054]作為上述處理器的示例,列舉了:CPU(中央處理單元)、微處理器、微控制器或具有專用功能的半導體集成電路(IC)等。
[0055]作為上述存儲器的示例,列舉了如下示例:半導體存儲單元(例如,RAM(隨機存取存儲器))、R0M(只讀存儲器)(例如,EEPR0M(電可擦寫可編程只讀存