本申請涉及通信技術領域,尤其涉及一種數(shù)據(jù)處理方法及系統(tǒng)。
背景技術:
軟件定義網(wǎng)絡作為一種新型的網(wǎng)絡架構,正在不斷地顛覆傳統(tǒng)的網(wǎng)絡部署方式,基于控制與轉發(fā)的分離,使得控制器能夠對整個網(wǎng)絡進行集中控制,掌握著全網(wǎng)信息,網(wǎng)絡開發(fā)者可以根據(jù)自己的需求對網(wǎng)絡進行編程控制,網(wǎng)絡不斷向著可編程的方向發(fā)展。
當網(wǎng)絡達到一定的規(guī)模時,單個的控制器無法及時地對網(wǎng)絡數(shù)據(jù)進行處理,基于這一處理的局限性,提出了控制器集群的方法,通過在網(wǎng)絡中部署備用的控制器,保證了無論什么時候都能有控制器在處理數(shù)據(jù),確保了網(wǎng)絡的高可用性和實時性。
當前的控制器集群技術是通過控制器之間選舉主控制器,其他的控制器即為備用控制器,主控制器負責接收和處理數(shù)據(jù),其他的備用控制器則相當于備用控制器。在主控制器宕機后,因為需要進行再選舉主控制器,使得在這過程中是沒有控制器處理數(shù)據(jù)包,整個網(wǎng)絡處于癱瘓的狀態(tài),導致網(wǎng)絡可用性較低。
技術實現(xiàn)要素:
本發(fā)明實施例提供了一種數(shù)據(jù)處理方法及系統(tǒng),用以解決現(xiàn)有技術中軟件定義網(wǎng)絡中的主控制器宕機,導致網(wǎng)卡可用性較低的問題。
其具體的技術方案如下:
一種數(shù)據(jù)處理方法,所述方法包括:
檢測第一網(wǎng)域中的第一控制器的運行狀態(tài),其中,所述第一網(wǎng)域為一區(qū)域范圍,所述第一控制器為所述第一域中接收以及處理節(jié)點設備發(fā)送的數(shù)據(jù)包;
若所述第一控制器運行異常時,則將所述第一網(wǎng)域中的數(shù)據(jù)轉移至第二網(wǎng)域的第二控制器,其中,所述第二網(wǎng)域包含所述第一網(wǎng)域。
可選的,在檢測第一網(wǎng)域中的第一控制器的運行狀態(tài)之前,所述方法還包括:
按照區(qū)域范圍對控制網(wǎng)絡進域劃分,得到N個網(wǎng)域,其中,網(wǎng)域范圍從N到1依次包含;
為每個網(wǎng)域設置至少一個控制器。
可選的,為所述N個網(wǎng)域中的每個網(wǎng)域分配至少一個控制器,包括:
分別確定每個網(wǎng)域中的節(jié)點設備總數(shù);
根據(jù)每個網(wǎng)域的所述節(jié)點設備總數(shù),對應為每個網(wǎng)域分配至少一個控制器;
依次為每個網(wǎng)域中的控制器配置優(yōu)先級,其中,網(wǎng)域范圍越小優(yōu)先級越大。
可選的,還包括:
若所述第一控制器運行正常時,將所述第一網(wǎng)域中的數(shù)據(jù)發(fā)送至所述第一控制器,并將所述第二網(wǎng)域中的數(shù)據(jù)發(fā)送至所述第二控制器。
可選的,在將所述第一網(wǎng)域中的數(shù)據(jù)轉移至第二網(wǎng)域的第二控制器之后,所述方法還包括:
檢測所述第二控制器是否異常;
若是,則將所述第二網(wǎng)域中的數(shù)據(jù)轉移至第三網(wǎng)域中的第三控制器,其中,所述第三網(wǎng)域的區(qū)域范圍大于第二網(wǎng)域的區(qū)域范圍,并所述第二控制器的優(yōu)先級大于所述第三控制器的優(yōu)先級。
一種數(shù)據(jù)處理系統(tǒng),包括:
檢測模塊,用于檢測第一網(wǎng)域中的第一控制器的運行狀態(tài),其中,所述第一網(wǎng)域為一區(qū)域范圍,所述第一控制器為所述第一域中接收以及處理節(jié)點設備發(fā)送的數(shù)據(jù)包;
處理模塊,用于若所述第一控制器運行異常時,則將所述第一網(wǎng)域中的數(shù)據(jù)轉移至第二網(wǎng)域的第二控制器,其中,所述第二網(wǎng)域包含所述第一網(wǎng)域。
可選的,所述處理模塊,還用于按照區(qū)域范圍對控制網(wǎng)絡進域劃分,得到N個網(wǎng)域,為每個網(wǎng)域設置至少一個控制器,其中,網(wǎng)域范圍從N到1依次包含。
可選的,所述處理模塊,具體用于分別確定每個網(wǎng)域中的節(jié)點設備總數(shù);根據(jù)每個網(wǎng)域的所述節(jié)點設備總數(shù),對應為每個網(wǎng)域分配至少一個控制器;依次為每個網(wǎng)域中的控制器配置優(yōu)先級,其中,網(wǎng)域范圍越小優(yōu)先級越大。
可選的,所述處理模塊,還用于若所述第一控制器運行正常時,將所述第一網(wǎng)域中的數(shù)據(jù)發(fā)送至所述第一控制器,并將所述第二網(wǎng)域中的數(shù)據(jù)發(fā)送至所述第二控制器。
可選的,所述處理模塊,還用于檢測所述第二控制器是否異常;若是,則將所述第二網(wǎng)域中的數(shù)據(jù)轉移至第三網(wǎng)域中的第三控制器,其中,所述第三網(wǎng)域的區(qū)域范圍大于第二網(wǎng)域的區(qū)域范圍,并所述第二控制器的優(yōu)先級大于所述第三控制器的優(yōu)先級。
綜上來講,本發(fā)明實施例所提供的技術方案至少具有如下技術效果:
1.在控制器集群中加入了分層實現(xiàn)方式,也就是換分了具有包含關系的網(wǎng)域,并且給每個網(wǎng)域分配了優(yōu)先級,優(yōu)先級低的域包含優(yōu)先級高的域,每個劃分的網(wǎng)域包含網(wǎng)絡設備優(yōu)先由管理該域的控制器進行數(shù)據(jù)包處理,這在首包的數(shù)量上進行了分流,解決了單點性能瓶頸的問題。
2.數(shù)據(jù)包的處理是根據(jù)數(shù)據(jù)包所在網(wǎng)域和控制器的優(yōu)先級而選擇控制器的,數(shù)據(jù)包的發(fā)送不是盲目發(fā)送到控制器,而是有選擇的控制器對象。
3.數(shù)據(jù)包除了當前域的控制器宕機后轉移到優(yōu)先級低的域進行處理外,其他情況都是由當前域的控制器處理,這種方式能夠更好的發(fā)揮控制的性能及網(wǎng)絡的效率。
附圖說明
圖1為本發(fā)明實施例中一種數(shù)據(jù)處理方法的流程圖;
圖2為本發(fā)明實施例中網(wǎng)域關系示意圖;
圖3為本發(fā)明實施例中控制器配置方法流程圖;
圖4為本發(fā)明實施例中一種數(shù)據(jù)處理系統(tǒng)的結構示意圖。
具體實施方式
本發(fā)明實施例中提供了一種數(shù)據(jù)處理方法,該方法中劃分多個網(wǎng)域,每個網(wǎng)域依次存在包含關系,并且每個網(wǎng)域中設置控制器,并設置控制器優(yōu)先級,在一個網(wǎng)域的控制器宕機時,該網(wǎng)域中的數(shù)據(jù)將被轉移至下一優(yōu)先級的控制器進行處理,這樣就保證了實時存在控制器對網(wǎng)域中的節(jié)點設備的數(shù)據(jù)進行處理,提升了整個網(wǎng)絡的可用性以及穩(wěn)定性。
下面通過附圖以及具體實施例對本發(fā)明技術方案做詳細的說明,應當理解,本發(fā)明實施例以及實施例中的具體技術特征只是對本發(fā)明技術方案的說明,而不是限定,在不沖突的情況下,本發(fā)明實施例以及實施例中的具體技術特征可以相互組合。
如圖1所示為本發(fā)明實施例中一種數(shù)據(jù)處理方法的流程圖,該方法包括:
S101,檢測第一網(wǎng)域中的第一控制器的運行狀態(tài);
S102,若第一控制器運行異常時,將第一網(wǎng)域中的數(shù)據(jù)轉移至第二網(wǎng)域的第二控制器。
具體來講,在本發(fā)明實施例中,首先對整個軟件定義網(wǎng)絡(英文:Software Defined Network,簡稱:SDN)控制器集群進行域劃分。
在本發(fā)明實施例中是按照區(qū)域范圍對整個的控制網(wǎng)絡進行于劃分,也就是按照局域網(wǎng)進行劃分,局域網(wǎng)可以是一個辦公室,可以是一個部門,還可以是一棟樓,這樣就得到N個網(wǎng)域,N為大于等于1的正整數(shù)。
在本發(fā)明實施例中,每個網(wǎng)域可以是一個局域網(wǎng),比如說,一個辦公室作為第一網(wǎng)域,一個部門作為第二網(wǎng)域,一棟樓作為第三網(wǎng)域。每個網(wǎng)域之間存在一個包含關系。也就是第三網(wǎng)域包含第二網(wǎng)域,第二網(wǎng)域包含第一網(wǎng)域,具體包含關系如圖2所示。
當然,除了上述的方式對整個控制網(wǎng)絡進行域劃分之外,還可以通過其他方式進行劃分,在此處就不再一一例舉。
進一步,在將整個網(wǎng)絡進行域劃分之后,每個域中都包含了一定數(shù)量的節(jié)點設備,這里節(jié)點設備可以是交換機以及與交換機下的各個主機。因此需要控制器來對節(jié)點設備的數(shù)據(jù)進行處理,具體配置控制器的方法流程如圖3所示:
S301,分別確定每個網(wǎng)域中的節(jié)點設備總數(shù);
具體來講,因為每個網(wǎng)域是存在包含關系的,所以每個網(wǎng)域中的節(jié)點設備總數(shù)是不相同,為了給網(wǎng)域配置對應數(shù)量的控制器,所以需要確定每個網(wǎng)域中的節(jié)點設備總數(shù),這樣可以確定每個網(wǎng)域中的數(shù)據(jù)量,從而保證控制器能夠處理各個節(jié)點設備的數(shù)據(jù)。
S302,根據(jù)每個網(wǎng)域的節(jié)點設備總數(shù),對應為每個網(wǎng)域分配至少一個控制器;
為了保證每個網(wǎng)域中控制器能夠處理該網(wǎng)域中的節(jié)點設備的數(shù)據(jù),所以需要根據(jù)節(jié)點設備總數(shù)來確定控制器的數(shù)量,比如說,該第一網(wǎng)域中存在50個節(jié)點設備,則在第一網(wǎng)域中配置一個控制器,在第二網(wǎng)域中存在100個節(jié)點設備,則在第二網(wǎng)域中配置兩個控制器。當然此處只是一個舉例說明,在實際的應用環(huán)境中根據(jù)需求做相應調整。
另外,由于網(wǎng)域越大節(jié)點設備總數(shù)越大,所以網(wǎng)域越大控制器的性能越好,這樣保證每個網(wǎng)域中的控制器能夠穩(wěn)定的完成的數(shù)據(jù)處理。
通過節(jié)點設備總數(shù)來配置控制器,保證每個網(wǎng)域中的控制器都能夠及時處理上報的數(shù)據(jù)。
S303,依次為每個網(wǎng)域中的控制器配置優(yōu)先級。
在為每個網(wǎng)域配置還對應數(shù)量的控制器之后,還需要對每個網(wǎng)域中的控制器配置優(yōu)先級。在本發(fā)明實施例中,按照網(wǎng)域范圍大小對網(wǎng)域中的控制器配置優(yōu)先級。
具體來講,網(wǎng)域范圍越小那么優(yōu)先級就越高,這樣使得網(wǎng)域范圍越小的網(wǎng)域中的控制器及時對數(shù)據(jù)進行處理。
另外,需要說明是,每個網(wǎng)域中的控制器在該網(wǎng)域中的優(yōu)先級是最高,這樣該控制器能夠準確的對該網(wǎng)域中的節(jié)點設備的數(shù)據(jù)進行處理,比如說,第二網(wǎng)域中的控制器在第二網(wǎng)域中的優(yōu)先級最高,第一網(wǎng)域中的控制器在第一網(wǎng)域中的優(yōu)先級最高。
另外,網(wǎng)域中的控制器之間的通信是通過組播進行同步信息,一般有三種模式,即:傳輸控制協(xié)議(英文:Transmission Control Protocol,簡稱:TCP)、用戶數(shù)據(jù)報協(xié)議(英文:User Datagram Protocol,簡稱:UDP)、TCP隧道。網(wǎng)域間的控制器通過Gossip協(xié)議自動監(jiān)測控制器狀態(tài)。
在完成網(wǎng)域劃分以及對每個網(wǎng)域中配置控制器之后,系統(tǒng)檢測控制器的運行狀態(tài),若是第一網(wǎng)域中的第一控制器運行異常時,系統(tǒng)將第一網(wǎng)域中的數(shù)據(jù)轉移至下一優(yōu)先級控制器,也就是第二網(wǎng)域中的第二控制器。第二控制器的性能優(yōu)于第一控制器的性能,這樣第二控制器能夠處理第一網(wǎng)域以及第二網(wǎng)域中數(shù)據(jù)。
當然,若是各個網(wǎng)域中的控制器都運行正常時,則各個網(wǎng)域中的控制器處理各自網(wǎng)域中的數(shù)據(jù)。
進一步,在第二控制器進數(shù)據(jù)處理時,系統(tǒng)也將實時檢測第二控制器是否異常,若是第二網(wǎng)域中的第二控制器也異常,則將第二網(wǎng)域中的數(shù)據(jù)轉移至第三網(wǎng)域中的第三控制器進行處理,第三網(wǎng)域的區(qū)域范圍大于第二網(wǎng)域的區(qū)域范圍,并第二控制器的優(yōu)先級大于第三控制器的優(yōu)先級。按照此循環(huán)繼續(xù)執(zhí)行,這樣保證異??刂破鞯臄?shù)據(jù)能夠及時被其他更低優(yōu)先級的控制器處理,從而提升了整個系統(tǒng)的可實用性。
綜上來講,本發(fā)明實施例所提供的技術方案至少具有如下技術效果:
1.在控制器集群中加入了分層實現(xiàn)方式,也就是換分了具有包含關系的網(wǎng)域,并且給每個網(wǎng)域分配了優(yōu)先級,優(yōu)先級低的域包含優(yōu)先級高的域,每個劃分的網(wǎng)域包含網(wǎng)絡設備優(yōu)先由管理該域的控制器進行數(shù)據(jù)包處理,這在首包的數(shù)量上進行了分流,解決了單點性能瓶頸的問題。
2.數(shù)據(jù)包的處理是根據(jù)數(shù)據(jù)包所在網(wǎng)域和控制器的優(yōu)先級而選擇控制器的,數(shù)據(jù)包的發(fā)送不是盲目發(fā)送到控制器,而是有選擇的控制器對象。
3.數(shù)據(jù)包除了當前域的控制器宕機后轉移到優(yōu)先級低的域進行處理外,其他情況都是由當前域的控制器處理,這種方式能夠更好的發(fā)揮控制的性能及網(wǎng)絡的效率。
對應本發(fā)明實施例中一種數(shù)據(jù)處理方法,本發(fā)明實施例中還提供了一種數(shù)據(jù)處理系統(tǒng),如圖4所示為本發(fā)明實施例中一種數(shù)據(jù)處理系統(tǒng)的結構示意圖,該系統(tǒng)包括:
檢測模塊401,用于檢測第一網(wǎng)域中的第一控制器的運行狀態(tài),其中,所述第一網(wǎng)域為一區(qū)域范圍,所述第一控制器為所述第一域中接收以及處理節(jié)點設備發(fā)送的數(shù)據(jù)包;
處理模塊402,用于若所述第一控制器運行異常時,則將所述第一網(wǎng)域中的數(shù)據(jù)轉移至第二網(wǎng)域的第二控制器,其中,所述第二網(wǎng)域包含所述第一網(wǎng)域。
進一步,在本發(fā)明實施例中,所述處理模塊402,還用于按照區(qū)域范圍對控制網(wǎng)絡進域劃分,得到N個網(wǎng)域,為每個網(wǎng)域設置至少一個控制器,其中,網(wǎng)域范圍從N到1依次包含。
進一步,在本發(fā)明實施例中,所述處理模塊402,具體用于分別確定每個網(wǎng)域中的節(jié)點設備總數(shù);根據(jù)每個網(wǎng)域的所述節(jié)點設備總數(shù),對應為每個網(wǎng)域分配至少一個控制器;依次為每個網(wǎng)域中的控制器配置優(yōu)先級,其中,網(wǎng)域范圍越小優(yōu)先級越大。
進一步,在本發(fā)明實施例中,所述處理模塊402,還用于若所述第一控制器運行正常時,將所述第一網(wǎng)域中的數(shù)據(jù)發(fā)送至所述第一控制器,并將所述第二網(wǎng)域中的數(shù)據(jù)發(fā)送至所述第二控制器。
進一步,在本發(fā)明實施例中,所述處理模塊402,還用于檢測所述第二控制器是否異常;若是,則將所述第二網(wǎng)域中的數(shù)據(jù)轉移至第三網(wǎng)域中的第三控制器,其中,所述第三網(wǎng)域的區(qū)域范圍大于第二網(wǎng)域的區(qū)域范圍,并所述第二控制器的優(yōu)先級大于所述第三控制器的優(yōu)先級。
盡管已描述了本申請的優(yōu)選實施例,但本領域內(nèi)的普通技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本申請范圍的所有變更和修改。
顯然,本領域的技術人員可以對本申請進行各種改動和變型而不脫離本申請的精神和范圍。這樣,倘若本申請的這些修改和變型屬于本申請權利要求及其等同技術的范圍之內(nèi),則本申請也意圖包含這些改動和變型在內(nèi)。