一種分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸方法和裝置的制造方法
【技術領域】
[0001]本發(fā)明涉及通信技術領域,特別是涉及一種分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸方法和裝置。
【背景技術】
[0002]在分布式設備中,一個設備內(nèi)部存在有多個控制器,每個控制器均具有自己的軟件系統(tǒng),設備內(nèi)部的這些控制器之間需要相互傳遞數(shù)據(jù),而為了實現(xiàn)在分布式設備內(nèi)部控制器之間相互傳遞數(shù)據(jù),就需要一種用于分布式設備內(nèi)部控制器間的內(nèi)部通信的方法。目前,一般通過IP地址來進行分布式設備的內(nèi)部通信,為分布式設備內(nèi)部的每個控制器均分配一個IP地址,在進行內(nèi)部通信時,將需進行通信的目標控制器的IP地址作為目的地址來與該目標控制器進行內(nèi)部通信。然而,在各分布式設備間,當各控制器間跨設備進行外部通信時,也一般使用IP地址來進行通信,如此,將導致分布式設備的內(nèi)部通信與外部通信均使用了 IP地址來進行,占用較多的IP地址資源,易造成IP地址資源混淆和沖突,且不益于分布式設備在網(wǎng)絡中的部署。
【發(fā)明內(nèi)容】
[0003]有鑒于此,本發(fā)明實施例提供一種分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸方法和裝置,以解決現(xiàn)有技術中分布式設備的內(nèi)部通信與外部通信均使用了 IP地址來進行,占用較多的IP地址資源,不益于分布式設備在網(wǎng)絡中的部署,且易造成IP地址資源混淆和沖突的問題。
[0004]為實現(xiàn)上述目的,本發(fā)明實施例提供如下技術方案:
[0005]—種分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸方法,包括:
[0006]確定接收數(shù)據(jù)的目標控制器,判斷所述目標控制器是否為內(nèi)部控制器;
[0007]若是,則確定所述目標控制器的控制器號,將所述控制器號作為目的地址進行數(shù)據(jù)封裝,并通過所述控制器號得到所述目標控制器的鏈路層地址,其中,分布式設備內(nèi)每個控制器具有的控制器號均唯一;
[0008]根據(jù)所述鏈路層地址將封裝后數(shù)據(jù)發(fā)送給所述目標控制器。
[0009]其中,所述通過所述控制器號查找得到所述目標控制器的鏈路層地址包括:
[0010]判斷是否在控制器號到鏈路層地址的映射表中查找到所述目標控制器的控制器號;
[0011 ]若查找到,則獲取所述控制器號到鏈路層地址的映射表中所述目標控制器的控制器號相對應的鏈路層地區(qū),得到所述目標控制器的鏈路層地址;
[0012]若未查找到,則向所有內(nèi)部控制器進行廣播,得到所有內(nèi)部控制器的鏈路層地址,從得到的所有鏈路層地址后選取得到所述目標控制器的鏈路層地址。
[0013]其中,所述從得到的所有鏈路層地址后選取得到所述目標控制器的鏈路層地址后還包括:將所述目標控制器的控制器號和所述目標控制器的鏈路層地址對應添加至所述控制器號到鏈路層地址的映射表中。
[0014]其中,所述判斷是否在控制器號到鏈路層地址的映射表中查找所述目標控制器的控制器號前包括:
[0015]判斷是否存在控制器號到鏈路層地址的映射表;
[0016]若不存在,則建立控制器號到鏈路層地址的映射表。
[0017]其中,所述鏈路層地址為MAC地址。
[0018]其中,所述確定接收數(shù)據(jù)的目標控制器前還包括:
[0019]為分布式設備內(nèi)部所有控制器均添加唯一標識,得到所述分布式設備內(nèi)部各控制器的控制器號。
[0020]—種分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸裝置,包括:判斷模塊、封裝模塊和傳輸模塊;其中,
[0021 ]所述判斷模塊,用于確定接收數(shù)據(jù)的目標控制器,判斷所述目標控制器是否為內(nèi)部控制器;
[0022]所述封裝模塊,用于當所述判斷模塊判定所述目標控制器為內(nèi)部控制器時,確定所述目標控制器的控制器號,將所述控制器號作為目的地址進行數(shù)據(jù)封裝,并通過所述控制器號得到所述目標控制器的鏈路層地址,其中,分布式設備內(nèi)每個控制器具有的控制器號均唯一;
[0023]所述傳輸模塊,用于根據(jù)所述鏈路層地址將封裝后數(shù)據(jù)發(fā)送給所述目標控制器。
[0024]其中,所述封裝模塊包括:第一判斷單元、第一獲取單元和第二獲取單元;其中,
[0025]所述第一判斷單元,用于判斷是否在控制器號到鏈路層地址的映射表中查找到所述目標控制器的控制器號;
[0026]所述第一獲取單元,用于當所述第一判斷單元判定在控制器號到鏈路層地址的映射表中查找到所述目標控制器的控制器號時,獲取所述控制器號到鏈路層地址的映射表中所述目標控制器的控制器號相對應的鏈路層地區(qū),得到所述目標控制器的鏈路層地址;
[0027]所述第二獲取單元,用于當所述第一判斷單元判定在控制器號到鏈路層地址的映射表中未查找到所述目標控制器的控制器號時,向所有內(nèi)部控制器進行廣播,得到所有內(nèi)部控制器的鏈路層地址,從得到的所有鏈路層地址后選取得到所述目標控制器的鏈路層地址。
[0028]其中,所述封裝模塊還包括:映射添加單元和/或第二判斷單元;其中,
[0029]所述映射添加單元,用于在所述第二獲取單元從得到的所有鏈路層地址后選取得到所述目標控制器的鏈路層地址后,將所述目標控制器的控制器號和所述目標控制器的鏈路層地址對應添加至所述控制器號到鏈路層地址的映射表中;
[0030]所述第二判斷單元,用于在所述第一判斷單元判斷是否在控制器號到鏈路層地址的映射表中查找所述目標控制器的控制器號前,判斷是否存在控制器號到鏈路層地址的映射表,若不存在,則建立控制器號到鏈路層地址的映射表。
[0031]其中,所述分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸裝置還包括:標識模塊,用于為分布式設備內(nèi)部所有控制器均添加唯一標識,得到所述分布式設備內(nèi)部各控制器的控制器號。
[0032]基于上述技術方案,本發(fā)明實施例提供的分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸方法和裝置,當需要傳輸數(shù)據(jù)時,先確定接收數(shù)據(jù)的目標控制器,判斷該接收數(shù)目的目標控制器是否為內(nèi)部控制器,即判斷該接收數(shù)據(jù)的目標控制器是否與發(fā)送數(shù)據(jù)的控制器位于同一分布式設備中,若是,則確定該目標控制器的控制器號,將該目標控制器的控制器號作為目的地址進行數(shù)據(jù)封裝,并通過該目標控制器的控制器號得到該目標控制器的鏈路層地址,其中,分布式設備內(nèi)每個控制器具有的控制器號均唯一,在得到目標控制器的鏈路層地址后,根據(jù)該鏈路層地址將封裝后數(shù)據(jù)發(fā)送給所述目標控制器。當分布式設備進行內(nèi)部控制器間通信時,將控制器號作為目的地址來進行數(shù)據(jù)傳輸,即通過控制器號來進行分布式設備的內(nèi)部通信,減少了 IP地址資源的占用,清晰地區(qū)分了分布式設備的內(nèi)部通信與外部通信,避免了 IP地址資源混淆和沖突,更便于分布式設備在網(wǎng)絡中的部署。
【附圖說明】
[0033]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。
[0034]圖1為本發(fā)明實施例提供的分布式設備內(nèi)部控制器間數(shù)據(jù)傳輸方法的流