網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法和系統(tǒng)。
【背景技術(shù)】
[0002]SDN(Software Defined Network,軟件定義網(wǎng)絡(luò))將網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備的控制面板與數(shù)據(jù)面分離,從而實(shí)現(xiàn)了網(wǎng)絡(luò)流量的靈活控制。而對于該軟件定義網(wǎng)絡(luò)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)以及現(xiàn)有的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)而言,采用一個(gè)控制器來集中控制多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的集中控制結(jié)構(gòu),造成控制器在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的位置相對固定,負(fù)荷巨大且容易受到攻擊,在控制器由于網(wǎng)絡(luò)負(fù)載較大或者受到惡意攻擊而失效時(shí),沒有其它節(jié)點(diǎn)可替代控制器,造成整個(gè)網(wǎng)絡(luò)的癱瘓,網(wǎng)絡(luò)可靠性低。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的主要目的是提供一種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法和系統(tǒng),旨在提高網(wǎng)絡(luò)的可靠性。
[0004]本發(fā)明提出一種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法,包括:
[0005]在作為主控制器的第二網(wǎng)絡(luò)節(jié)點(diǎn)出現(xiàn)故障時(shí),作為備用控制器的第一網(wǎng)絡(luò)節(jié)點(diǎn)接管所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的主控制器功能,并向網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)下發(fā)主控制器更換消息,以供網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)接收到所述主控制器更換消息時(shí),切斷與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的通信;
[0006]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在接收到其它網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)通信切斷的確定信息時(shí),作為主控制器與發(fā)送所述確定信息的其它網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行通信。
[0007]優(yōu)選地,所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在接收到其它網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)通信切斷的確定信息時(shí),作為主控制器與發(fā)送所述確定信息的其它網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行通信的步驟之后,該方法包括:
[0008]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)預(yù)存的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路信息以及網(wǎng)絡(luò)資源信息,選擇第三網(wǎng)絡(luò)節(jié)點(diǎn)作為備用控制器;
[0009]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)將其保存的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路信息以及網(wǎng)絡(luò)資源信息發(fā)送給所述第三網(wǎng)絡(luò)節(jié)點(diǎn),以供所述第三網(wǎng)絡(luò)節(jié)點(diǎn)作為備用控制器建立與其它網(wǎng)絡(luò)節(jié)點(diǎn)之間的網(wǎng)絡(luò)連接。
[0010]優(yōu)選地,所述第一網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)預(yù)存的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路信息以及網(wǎng)絡(luò)資源信息,選擇第三網(wǎng)絡(luò)節(jié)點(diǎn)作為備用控制器的步驟包括:
[0011]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)預(yù)存的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路信息以及網(wǎng)絡(luò)資源信息,確認(rèn)各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路數(shù)η和數(shù)據(jù)處理能力參數(shù)c ;
[0012]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路數(shù)η計(jì)算出網(wǎng)絡(luò)總鏈路數(shù)N,同時(shí)選擇最大的數(shù)據(jù)處理能力參數(shù)c作為網(wǎng)絡(luò)總數(shù)據(jù)處理能力參數(shù)C;
[0013]按公式W=n/N+c/C計(jì)算出各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)的加權(quán)值W ;
[0014]選擇加權(quán)值W最大的第三網(wǎng)絡(luò)節(jié)點(diǎn)作為備用控制器。
[0015]優(yōu)選地,所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在接收到其它網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)通信切斷的確定信息時(shí),作為主控制器與發(fā)送所述確定信息的其它網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行通信的步驟之后,該方法包括:
[0016]當(dāng)所述第一網(wǎng)絡(luò)節(jié)點(diǎn)接收到所述第二網(wǎng)絡(luò)節(jié)點(diǎn)基于所述控制器更換消息反饋的確認(rèn)信息時(shí),所述第一網(wǎng)絡(luò)節(jié)點(diǎn)更新所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路信息以及網(wǎng)絡(luò)資源信息,將所述第二網(wǎng)絡(luò)節(jié)點(diǎn)作為正常交換網(wǎng)絡(luò)節(jié)點(diǎn)。
[0017]優(yōu)選地,所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在接收到其它網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)通信切斷的確定信息時(shí),作為主控制器與發(fā)送所述確定信息的其它網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行通信的步驟之后,該方法包括:
[0018]當(dāng)所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在預(yù)設(shè)的時(shí)間間隔內(nèi)未接收到所述第二網(wǎng)絡(luò)節(jié)點(diǎn)基于所述控制器更換消息反饋的確認(rèn)信息時(shí),所述第一網(wǎng)絡(luò)節(jié)點(diǎn)刪除其保存的所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路信息以及網(wǎng)絡(luò)業(yè)務(wù)信息。
[0019]優(yōu)選地,所述當(dāng)所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在預(yù)設(shè)的時(shí)間間隔未接收到所述第二網(wǎng)絡(luò)節(jié)點(diǎn)反饋的確認(rèn)信息時(shí),所述第一網(wǎng)絡(luò)節(jié)點(diǎn)刪除其保存的所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的鏈路信息以及網(wǎng)絡(luò)業(yè)務(wù)信息的步驟之后,該方法包括:
[0020]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在接收到所述第二網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的網(wǎng)絡(luò)接入請求時(shí),所述第一網(wǎng)絡(luò)節(jié)點(diǎn)建立與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的網(wǎng)絡(luò)連接,并向所述第二網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送數(shù)據(jù)獲取請求;
[0021]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)接收所述第二網(wǎng)絡(luò)節(jié)點(diǎn),基于所述數(shù)據(jù)獲取請求反饋的鏈路信息以及網(wǎng)絡(luò)資源信息時(shí),保存所述鏈路信息以及網(wǎng)絡(luò)資源信息。
[0022]優(yōu)選地,所述在作為主控制器的第二網(wǎng)絡(luò)節(jié)點(diǎn)出現(xiàn)故障時(shí),則作為備用控制器的第一網(wǎng)絡(luò)節(jié)點(diǎn)接管所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的主控制器功能,并向網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)下發(fā)主控制器更換消息,以供網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)接收到所述主控制器更換消息時(shí),切斷與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的通信的步驟之前,該方法包括:
[0023]所述第二網(wǎng)絡(luò)節(jié)點(diǎn)向網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)廣播數(shù)據(jù)獲取請求;
[0024]網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)在接收到所述數(shù)據(jù)獲取請求時(shí),建立與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)之間的網(wǎng)絡(luò)連接,并向所述第二網(wǎng)絡(luò)節(jié)點(diǎn)反饋鏈路信息以及網(wǎng)絡(luò)資源信息;
[0025]所述第二網(wǎng)絡(luò)節(jié)點(diǎn)接收所述鏈路信息以及網(wǎng)絡(luò)資源信息并保存,并根據(jù)保存的鏈路信息以及網(wǎng)絡(luò)資源信息選擇所述第一網(wǎng)絡(luò)節(jié)點(diǎn)作為備用控制器;
[0026]所述第二網(wǎng)絡(luò)節(jié)點(diǎn)將保存的鏈路信息以及網(wǎng)絡(luò)資源信息發(fā)送給所述第一網(wǎng)絡(luò)節(jié)點(diǎn),以供所述第一網(wǎng)絡(luò)節(jié)點(diǎn)與其它網(wǎng)絡(luò)節(jié)點(diǎn)建立網(wǎng)絡(luò)連接。
[0027]優(yōu)選地,所述第二網(wǎng)絡(luò)節(jié)點(diǎn)將保存的鏈路信息以及網(wǎng)絡(luò)資源信息發(fā)送給所述第一網(wǎng)絡(luò)節(jié)點(diǎn),以供所述第一網(wǎng)絡(luò)節(jié)點(diǎn)與其它網(wǎng)絡(luò)節(jié)點(diǎn)建立網(wǎng)絡(luò)連接的步驟之后該方法還包括:
[0028]所述第二網(wǎng)絡(luò)節(jié)點(diǎn)在更新其保存的鏈路信息以及網(wǎng)絡(luò)資源信息后,將更新的鏈路信息以及網(wǎng)絡(luò)資源信息發(fā)送給所述第一網(wǎng)絡(luò)節(jié)點(diǎn);
[0029]所述第一網(wǎng)絡(luò)節(jié)點(diǎn)根據(jù)接收到的鏈路信息以及網(wǎng)絡(luò)資源信息,更新其保存的鏈路信息以及網(wǎng)絡(luò)資源信息。
[0030]優(yōu)選地,所述第一網(wǎng)絡(luò)節(jié)點(diǎn)在接收到其它網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的確定信息時(shí),作為主控制器建立與其它網(wǎng)絡(luò)節(jié)點(diǎn)的網(wǎng)絡(luò)連接的步驟之前,該方法包括:
[0031]其它網(wǎng)絡(luò)節(jié)點(diǎn)在接收到所述第一網(wǎng)絡(luò)節(jié)點(diǎn)下發(fā)的主控制器更換消息時(shí),向所述第二網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送狀態(tài)請求消息;
[0032]當(dāng)所述其它網(wǎng)絡(luò)節(jié)點(diǎn)在預(yù)設(shè)的時(shí)間間隔內(nèi),未在接收到所述第二網(wǎng)絡(luò)節(jié)點(diǎn)基于所述狀態(tài)請求消息反饋的確認(rèn)消息時(shí),向所述第一網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送確認(rèn)信息。
[0033]本發(fā)明還提出一種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制系統(tǒng),包括網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),其中,每個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)包括:
[0034]接發(fā)模塊,用于在作為主控制器的第二網(wǎng)絡(luò)節(jié)點(diǎn)出現(xiàn)故障時(shí),接發(fā)模塊所在的備用控制器網(wǎng)絡(luò)節(jié)點(diǎn)接管所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的主控制器功能,并向網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)下發(fā)主控制器更換消息,以供網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)接收到所述主控制器更換消息時(shí),切斷與所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的通信;
[0035]控制模塊,用于在所述接發(fā)模塊接收到其它網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送的確定信息時(shí),將所述接發(fā)模塊所在的網(wǎng)絡(luò)節(jié)點(diǎn)作為主控制器與發(fā)送所述確定信息的其它網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行通信。
[0036]本發(fā)明提出的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法和系統(tǒng),該方法中在作為主控制器的第二網(wǎng)絡(luò)節(jié)點(diǎn)出現(xiàn)故障時(shí),作為備用控制器的第一網(wǎng)絡(luò)節(jié)點(diǎn)向網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的其它節(jié)點(diǎn)發(fā)送主控制器更換指令,替換第二網(wǎng)絡(luò)節(jié)點(diǎn)作為網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的主控制器,使得主控制器在出現(xiàn)故障時(shí),備用控制器作為主控制器對網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行控制,使得網(wǎng)絡(luò)更加可靠。
【附圖說明】
[0037]圖1為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第一實(shí)施例的流程示意圖;
[0038]圖2為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第二實(shí)施例的流程示意圖;
[0039]圖3為圖2中步驟S30的細(xì)化流程示意圖;
[0040]圖4為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第三實(shí)施例的流程示意圖;
[0041]圖5為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第四實(shí)施例的流程示意圖;
[0042]圖6為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第五實(shí)施例的流程示意圖;
[0043]圖7為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第六實(shí)施例的流程示意圖;
[0044]圖8為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第七實(shí)施例的流程示意圖;
[0045]圖9為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第八實(shí)施例的流程示意圖;
[0046]圖10為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制系統(tǒng)較佳實(shí)施例的功能模塊示意圖。
[0047]本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
【具體實(shí)施方式】
[0048]下面結(jié)合附圖及具體實(shí)施例就本發(fā)明的技術(shù)方案做進(jìn)一步的說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0049]參照圖1,圖1為本發(fā)明網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法第一實(shí)施例的流程示意圖。
[0050]本實(shí)施例提出一種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的控制方法,包括:
[0051]步驟S10,在作為主控制器的第二網(wǎng)絡(luò)節(jié)點(diǎn)出現(xiàn)故障時(shí),則作為備用控制器的第一網(wǎng)絡(luò)節(jié)點(diǎn)接管所述第二網(wǎng)絡(luò)節(jié)點(diǎn)的主控制器功能,并向網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)下發(fā)主控制器更換消息,以供網(wǎng)絡(luò)中的其它網(wǎng)絡(luò)節(jié)點(diǎn)接收到所述主控制器更換消息時(shí),切斷與所述第一網(wǎng)絡(luò)節(jié)點(diǎn)的通信;
[0052]在網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中有多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),主控制器以及備用控制器均與網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中的所有網(wǎng)絡(luò)節(jié)點(diǎn)均建立網(wǎng)絡(luò)連接,該網(wǎng)絡(luò)連接優(yōu)選為open flow網(wǎng)絡(luò)連接,該網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中選取一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)作為主控制器,一個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)作為備用控制器。
[0053]作為備用控制器的第一網(wǎng)絡(luò)節(jié)點(diǎn)在確認(rèn)第二網(wǎng)絡(luò)節(jié)點(diǎn)是否出現(xiàn)故障時(shí),具體實(shí)施例如下:
[00