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