• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于多協(xié)議的跨VLAN的異構(gòu)多子網(wǎng)物理拓?fù)溲芯?/h1>
      2021-06-18 11:23馬曉波蘇依拉仁慶道爾吉
      現(xiàn)代電子技術(shù) 2021年11期
      關(guān)鍵詞:交換機(jī)端口介質(zhì)

      馬曉波,蘇依拉,仁慶道爾吉

      (內(nèi)蒙古工業(yè)大學(xué) 信息工程學(xué)院,內(nèi)蒙古 呼和浩特 010080)

      0 引 言

      異構(gòu)網(wǎng)絡(luò)主要是指由不同品牌、不同類型的設(shè)備和系統(tǒng)所組建的計(jì)算機(jī)網(wǎng)絡(luò)。對(duì)種類繁多的網(wǎng)絡(luò)設(shè)備所搭建的異構(gòu)網(wǎng)絡(luò)進(jìn)行有效管理已經(jīng)成為一個(gè)網(wǎng)絡(luò)系統(tǒng)高效運(yùn)轉(zhuǎn)的關(guān)鍵因素。由于VLAN間的子網(wǎng)不允許直接進(jìn)行通信,需要通過(guò)三層通信才能實(shí)現(xiàn)VLAN間的互相訪問,而且網(wǎng)絡(luò)中存在不同廠商的網(wǎng)絡(luò)設(shè)備,這些設(shè)備具有多樣性且支持不同通信協(xié)議,沒有為物理拓?fù)浒l(fā)現(xiàn)直接提供所需的信息。因此,設(shè)計(jì)一種基于異構(gòu)跨VLAN的多子網(wǎng)物理拓?fù)浒l(fā)現(xiàn)方法,具有實(shí)際的工作價(jià)值和進(jìn)一步推廣的意義。

      對(duì)現(xiàn)有的幾種物理網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)算法做了深入的研究分析:基于AFT的物理拓?fù)浒l(fā)現(xiàn)算法要求網(wǎng)絡(luò)中周期性地產(chǎn)生額外流量用以維護(hù)AFT的完整,并且對(duì)于啞設(shè)備的判斷需要單獨(dú)進(jìn)行考慮,而且隨著網(wǎng)絡(luò)規(guī)模的不斷擴(kuò)大,要求在短時(shí)間內(nèi)準(zhǔn)確獲得設(shè)備的MAC地址會(huì)有一定的困難;基于端口流量的物理拓?fù)浒l(fā)現(xiàn)算法雖然簡(jiǎn)單,但仍需要進(jìn)行大量運(yùn)算,一般只能用于對(duì)其他拓?fù)浒l(fā)現(xiàn)算法進(jìn)行補(bǔ)充;基于ARP的物理拓?fù)浒l(fā)現(xiàn)算法需要三層網(wǎng)絡(luò)支持;基于STP的物理拓?fù)浒l(fā)現(xiàn)算法不能夠直接發(fā)現(xiàn)網(wǎng)橋與路由器、主機(jī)等設(shè)備的連接關(guān)系。綜合對(duì)比上述算法,本文提出一種綜合利用STP和AFT信息的組合式拓?fù)浒l(fā)現(xiàn)算法,算法借助SNMP取得交換機(jī)所維護(hù)的MIB庫(kù)中生成樹和地址轉(zhuǎn)發(fā)表的相關(guān)信息,經(jīng)過(guò)查找對(duì)比,從而判定出交換機(jī)及其他網(wǎng)絡(luò)設(shè)備的連接關(guān)系,在此基礎(chǔ)上根據(jù)獲取到的VLAN的OID信息進(jìn)行判斷,完成VLAN的處理工作,最終獲得跨VLAN的異構(gòu)多子網(wǎng)的物理拓?fù)浣Y(jié)構(gòu)。

      1 基于STP和基于AFT的物理拓?fù)浒l(fā)現(xiàn)方法

      1.1 基于AFT的物理拓?fù)浒l(fā)現(xiàn)算法

      算法過(guò)程描述如下:

      1)定義交換域中所有交換機(jī)的集合;

      2)對(duì)于每個(gè)集合,分別取出一臺(tái)交換機(jī)Si,遍歷其每個(gè)端口Si j;

      3)若交換機(jī)Si的端口Sij已經(jīng)與其他設(shè)備的端口互聯(lián),則轉(zhuǎn)到步驟2)執(zhí)行;

      4)若Aij∪Akl=U且Aij∩Ak l=?,則交換機(jī)Si的端口Si j與交換機(jī)Sk的端口Skl直連。若Aij中含有主機(jī)或者路由器的MAC地址,則交換機(jī)Si的端口Si j與路由器或者交換機(jī)直連。

      該算法主要利用Bridge MIB?Ⅱ的地址轉(zhuǎn)發(fā)表中二層設(shè)備間的物理連接關(guān)系以及特殊場(chǎng)景下的共享網(wǎng)絡(luò)。由于所有交換機(jī)都基于AFT轉(zhuǎn)發(fā)數(shù)據(jù),因此能夠訪問其所需的AFT。但要求交換機(jī)都能夠支持SNMP協(xié)議,而對(duì)于網(wǎng)絡(luò)底層的設(shè)備并不能統(tǒng)一地支持SNMP協(xié)議,這在一定程度上產(chǎn)生了局限性。由于該算法對(duì)網(wǎng)絡(luò)環(huán)境具有較高的要求,所以在現(xiàn)實(shí)網(wǎng)絡(luò)中難以保證交換機(jī)的地址轉(zhuǎn)發(fā)表AFT始終完整。

      1.2 基于STP的物理拓?fù)浒l(fā)現(xiàn)算法

      算法過(guò)程描述如下:

      1)分配內(nèi)存并初始化;

      2)對(duì)網(wǎng)絡(luò)中臨時(shí)交換機(jī)集合所包含的各個(gè)交換機(jī)進(jìn)行信息探測(cè),獲取其IP及MAC地址;

      3)根據(jù)交換機(jī)的IP地址,通過(guò)SNMP訪問臨時(shí)集合所包含交換機(jī)的MIB庫(kù);

      4)采用廣度優(yōu)先遍歷的方法,將根交換機(jī)的信息加入到交換機(jī)集合中,并創(chuàng)建搜索指針指向根交換機(jī);

      5)以根交換機(jī)MAC地址為索引,將根端口為索引的MAC地址處于臨時(shí)集合中的交換機(jī)依次查找出來(lái),然后加入到交換機(jī)集合;

      6)重復(fù)搜索直到所有的交換機(jī)均加入到交換機(jī)集合中;

      7)若臨時(shí)集合中還有未按索引查找到的交換機(jī),則查詢交換機(jī)的指定網(wǎng)橋,如網(wǎng)橋不存在則將該交換機(jī)加入至交換機(jī)集合,然后將指針指向該交換機(jī),重復(fù)步驟4)~步驟6),如存在指定網(wǎng)橋則說(shuō)明有集線器等共享網(wǎng)絡(luò)設(shè)備相連;

      8)遍歷數(shù)據(jù),查詢交換機(jī)的端口信息;

      9)排除指定網(wǎng)橋;

      10)查詢交換機(jī)的阻塞端口所對(duì)應(yīng)的指定網(wǎng)橋,將其連接信息填入到相應(yīng)的端口信息中;

      11)Ping網(wǎng)絡(luò)內(nèi)的所有設(shè)備,并訪問交換機(jī)的地址轉(zhuǎn)發(fā)表,填入信息。

      該算法可以得到網(wǎng)絡(luò)設(shè)備的物理連接關(guān)系,也可以發(fā)現(xiàn)大部分的啞交換機(jī)及其MAC地址與所連端口的關(guān)系,還可以發(fā)現(xiàn)局域網(wǎng)中的備用鏈路,發(fā)現(xiàn)的準(zhǔn)確率較高。由于端口的STP信息少于端口的AFT信息,所以該算法擁有較低的時(shí)間復(fù)雜度,該算法不能夠直接發(fā)現(xiàn)網(wǎng)橋與路由器、主機(jī)等設(shè)備的連接關(guān)系,同時(shí)也有可能使部分設(shè)備不支持STP協(xié)議,因此,可考慮在STP發(fā)現(xiàn)算法的基礎(chǔ)上應(yīng)用基于AFT的發(fā)現(xiàn)算法,進(jìn)一步完成對(duì)整個(gè)網(wǎng)絡(luò)的拓?fù)浒l(fā)現(xiàn)。

      2 改進(jìn)的物理拓?fù)浒l(fā)現(xiàn)方法

      2.1 改進(jìn)基于STP的拓?fù)浒l(fā)現(xiàn)算法

      網(wǎng)絡(luò)中的交換機(jī)通過(guò)定期交互BPDU(網(wǎng)橋協(xié)議數(shù)據(jù)單元)完成生成樹的計(jì)算,選出數(shù)據(jù)轉(zhuǎn)發(fā)端口和阻塞端口,然后將阻塞端口禁用,構(gòu)造一個(gè)無(wú)環(huán)的、邏輯上的樹,當(dāng)網(wǎng)絡(luò)中出現(xiàn)故障導(dǎo)致網(wǎng)絡(luò)的物理結(jié)構(gòu)發(fā)生變化時(shí),交換機(jī)會(huì)再次根據(jù)BPDU信息重新計(jì)算并生成無(wú)環(huán)網(wǎng)絡(luò)。

      本文所用到的定義:擁有最小橋ID的交換機(jī)被稱為根橋;除根橋外,其他交換機(jī)稱為非根橋;在非根橋設(shè)備上負(fù)責(zé)向根橋轉(zhuǎn)發(fā)數(shù)據(jù)的端口稱為根端口;指定交換機(jī)也稱為指定網(wǎng)橋,由處于同一子網(wǎng)下(即相同網(wǎng)段)的交換機(jī)選舉得出;指定交換機(jī)向本網(wǎng)段轉(zhuǎn)發(fā)配置消息的端口即為指定端口;轉(zhuǎn)發(fā)端口包括根端口和指定端口,用來(lái)轉(zhuǎn)發(fā)數(shù)據(jù)流量;除轉(zhuǎn)發(fā)端口外的其他端口都處于阻塞狀態(tài),稱為阻塞端口。

      推論1:在STP網(wǎng)絡(luò)中,如果兩個(gè)有直接關(guān)系的端口都為根端口,說(shuō)明兩個(gè)端口必定處于同一條物理鏈路,由此可推出必處于同一網(wǎng)段,這樣就會(huì)在同一網(wǎng)段內(nèi)存在兩條路徑到達(dá)根橋設(shè)備,從而形成環(huán)路,該推論與STP的定義矛盾。

      推論2:在STP網(wǎng)絡(luò)中,如果兩個(gè)有直連關(guān)系的端口都為非根端口,首先說(shuō)明兩端口必定處于同一條物理鏈路,由此可推出它們必定處于同一網(wǎng)段,并對(duì)該網(wǎng)段的數(shù)據(jù)幀進(jìn)行轉(zhuǎn)發(fā),無(wú)根端口,同一網(wǎng)段下無(wú)根端口與根橋設(shè)備相連和前置條件相矛盾。

      由上述兩個(gè)推論過(guò)程可知,當(dāng)兩交換機(jī)的端口間存在物理連接時(shí),有可能是一個(gè)端口發(fā)送的BPDU消息被另一個(gè)端口接收,則可推斷出這兩個(gè)端口中必定有一個(gè)為根端口。由此可以得出,存在直連關(guān)系的兩個(gè)端口不可能同時(shí)為非根端口,如果兩個(gè)非根端口處于同一網(wǎng)段,則必有一個(gè)端口無(wú)法轉(zhuǎn)發(fā)數(shù)據(jù),即為阻塞端口。就單臺(tái)設(shè)備而言,非根橋設(shè)備的轉(zhuǎn)發(fā)端口的指定交換機(jī)都是該設(shè)備本身。

      根據(jù)上述推論結(jié)合MIB庫(kù)中dot1dStp Port Table表的對(duì)象值可推導(dǎo)出如下判斷規(guī)則:

      設(shè)備連接關(guān)系判斷規(guī)則1:設(shè)交換機(jī)Si的某個(gè)根端口為Sij,Si j的指定交換機(jī)為Sk,當(dāng)交換機(jī)的非根端口Sk l與Si j的指定端口信息相等時(shí),可知端口Skl發(fā)送的BPDU被端口Sij接收,所以可以推斷出交換機(jī)Si與Sk之間必定存在物理鏈接,即端口Sij與端口Sk l直連。

      設(shè)備連接關(guān)系判斷規(guī)則2:設(shè)交換機(jī)Si的某個(gè)非根端口為Si j,交換機(jī)Sk的某個(gè)非根端口為Skl,當(dāng)Sij的指定交換機(jī)為Sk且Si j與Sk l的指定交換機(jī)相同時(shí),即端口Sk l的指定交換機(jī)為設(shè)備本身,如果端口Sij為阻塞端口,則其阻塞端口的指定交換機(jī)不是設(shè)備本身,可以判斷出端口Si j與端口Sk l直連,且該端口用于連接備份鏈路。

      設(shè)備連接關(guān)系判斷規(guī)則3:設(shè)交換機(jī)的某個(gè)非根端口為Sij,若Sij與子網(wǎng)內(nèi)邊緣設(shè)備(例如主機(jī)、路由器等)直接連接,可獲取MIB?Ⅱ中的sysService變量判斷該設(shè)備是否提供二層服務(wù),根據(jù)OID信息區(qū)分出主機(jī)設(shè)備為路由器或主機(jī)之后,可知端口Ai j內(nèi)必定含有直連主機(jī)MAC地址信息。

      將上述設(shè)備連接關(guān)系的判斷規(guī)則在實(shí)際中進(jìn)行應(yīng)用時(shí),只需將規(guī)則與dot1dStpPortTable表中的對(duì)應(yīng)信息結(jié)合,根據(jù)生成樹協(xié)議的特點(diǎn),便可判定出相應(yīng)設(shè)備間的連接關(guān)系。利用規(guī)則1可以準(zhǔn)確獲取交換機(jī)間的連接關(guān)系;利用規(guī)則2可以發(fā)現(xiàn)交換機(jī)的冗余鏈路。

      2.2 改進(jìn)基于AFT的拓?fù)浒l(fā)現(xiàn)算法

      先將交換域構(gòu)建成一棵無(wú)向樹,若某交換域中只含有一個(gè)子網(wǎng),則Ai j就在交換域所構(gòu)建的無(wú)向樹的路徑中,交換機(jī)端口Sij所能到達(dá)的節(jié)點(diǎn)的集合,如果AFT表是完整的,那么Aij就包含生成樹的路徑中全部節(jié)點(diǎn)的集合。值得注意的是,當(dāng)交換域中不止含有一個(gè)子網(wǎng)時(shí),上述情況不適用。當(dāng)交換域中有多個(gè)子網(wǎng)時(shí),盡管該交換域中的所有交換機(jī)端口的地址轉(zhuǎn)發(fā)表都完整也無(wú)法得到唯一的拓?fù)溥B接關(guān)系。本文構(gòu)建的基于AFT的拓?fù)浒l(fā)現(xiàn)算法主要是對(duì)樹型剪裁算法進(jìn)行改進(jìn)。

      定理1:葉交換機(jī)只有一個(gè)端口的AFT含有其他交換機(jī)的地址。

      定理2:中間交換機(jī)要么至少有兩個(gè)端口的AFT含有其他交換機(jī)的地址,要么一個(gè)端口的AFT含有其他交換機(jī)的地址并且至少存在一個(gè)端口含有的葉子節(jié)點(diǎn)地址分布在其他交換機(jī)的不同端口上。

      樹型剪裁算法的主要思想:如果一棵樹的葉子節(jié)點(diǎn)被摘除,被摘光葉子的樹的分叉就會(huì)變成新的葉子節(jié)點(diǎn),以此類推直到這棵樹被逐步裁剪完。改進(jìn)的樹型剪裁算法適用于多子網(wǎng)交換域的網(wǎng)絡(luò),不需要定期發(fā)送數(shù)據(jù)流量來(lái)盡量保持AFT表的完整。下面介紹改進(jìn)算法的核心思想:

      1)定義交換機(jī)的集合為H(集合H中包含交換機(jī)的地址以及交換機(jī)端口的地址轉(zhuǎn)發(fā)表);

      2)利用文獻(xiàn)[1]中已經(jīng)證明的基本推理規(guī)則進(jìn)行AFT的擴(kuò)展;

      3)確定葉交換機(jī)Sk,找出交換機(jī)Si中只有一個(gè)Aij包含其他交換機(jī)地址的交換機(jī)作為備選的葉交換機(jī)(根據(jù)其是否在H中確定)(定理1),然后再根據(jù)定理2去掉其中的中間交換機(jī),最后將所有葉交換機(jī)從H中剪掉。若葉交換機(jī)的某個(gè)下行端口中出現(xiàn)了多個(gè)葉子地址,則表示該葉子與HUB等啞設(shè)備相連;

      4)更新交換機(jī)集合H中的地址轉(zhuǎn)發(fā)表。在剩余端口的Ai j中,交換機(jī)的地址為剪掉的葉交換機(jī)端口含有的地址全部更新成葉交換機(jī)Sk的地址(該過(guò)程等同于將剪掉的Sk用新的葉節(jié)點(diǎn)進(jìn)行了替換),然后將重復(fù)項(xiàng)進(jìn)行合并,再轉(zhuǎn)到步驟3),直至H中只含有根節(jié)點(diǎn)。

      改進(jìn)后的算法復(fù)雜度為O(n2),n表示網(wǎng)絡(luò)中節(jié)點(diǎn)的個(gè)數(shù)。算法只需利用交換機(jī)的地址轉(zhuǎn)發(fā)表,對(duì)主機(jī)的地址轉(zhuǎn)發(fā)表沒有要求,而在現(xiàn)今的網(wǎng)絡(luò)中很多主機(jī)是不支持SNMP協(xié)議的。所以,改進(jìn)后的算法能夠適用于現(xiàn)實(shí)中的網(wǎng)絡(luò)環(huán)境。

      2.3 組合STP和AFT的拓?fù)浒l(fā)現(xiàn)算法

      2.3.1 算法理論依據(jù)

      組合式算法的合并思想是從STP算法的根節(jié)點(diǎn)開始,先找到AFT算法中所輸出的對(duì)應(yīng)節(jié)點(diǎn),然后把這個(gè)節(jié)點(diǎn)作為AFT算法的新根節(jié)點(diǎn),以此類推。這樣,就可以每次都從相同的根節(jié)點(diǎn)去進(jìn)行廣度優(yōu)先遍歷,然后再對(duì)節(jié)點(diǎn)的連接關(guān)系進(jìn)行合并。對(duì)任意節(jié)點(diǎn)Si的合并規(guī)則:

      1)如果STP算法和AFT算法對(duì)某個(gè)節(jié)點(diǎn)端口Sij的連接關(guān)系發(fā)現(xiàn)結(jié)果相同,則保留STP算法的發(fā)現(xiàn)結(jié)果,忽略AFT算法的發(fā)現(xiàn)結(jié)果;

      2)如果AFT算法發(fā)現(xiàn)了某個(gè)節(jié)點(diǎn)端口Si j和某個(gè)設(shè)備存在直接連接關(guān)系,而在STP算法中沒有相關(guān)的發(fā)現(xiàn),則對(duì)這個(gè)連接關(guān)系進(jìn)行補(bǔ)充;

      3)如果STP算法和AFT算法對(duì)某個(gè)節(jié)點(diǎn)端口Sij的連接關(guān)系發(fā)現(xiàn)結(jié)果不同,則認(rèn)為存在啞設(shè)備(比如HUB)連接了該節(jié)點(diǎn)端口Sij與所發(fā)現(xiàn)的不同設(shè)備,即通過(guò)加一個(gè)啞設(shè)備將不同設(shè)備進(jìn)行合并。

      廣度優(yōu)先遍歷完成后,就完成了所有節(jié)點(diǎn)的連接關(guān)系合并。這樣,組合式算法中算法合并階段的算法復(fù)雜度就從O(n2)降到了O(nlogn),節(jié)省了拓?fù)浒l(fā)現(xiàn)的時(shí)間。而且對(duì)于STP算法沒有發(fā)現(xiàn)的相應(yīng)主機(jī)、路由器等設(shè)備的連接關(guān)系,可與AFT算法的相應(yīng)發(fā)現(xiàn)結(jié)果進(jìn)行合并,這樣就整合了兩種拓?fù)浒l(fā)現(xiàn)算法的優(yōu)勢(shì),不僅對(duì)交換機(jī)之間的拓?fù)溥B接關(guān)系進(jìn)行了補(bǔ)充,又對(duì)非交換設(shè)備的連接關(guān)系進(jìn)行了補(bǔ)充。

      合并算法運(yùn)行結(jié)束后,再對(duì)可能出現(xiàn)的共享介質(zhì)做進(jìn)一步判斷,下面對(duì)共享介質(zhì)在網(wǎng)絡(luò)中的場(chǎng)景予以分析:

      場(chǎng)景1:當(dāng)共享介質(zhì)位于交換域的邊緣,處在交換機(jī)和主機(jī)設(shè)備間,用來(lái)連接主機(jī)設(shè)備時(shí),對(duì)設(shè)備連接關(guān)系判斷規(guī)則并沒有影響,可以正常獲得主機(jī)與交換機(jī)的連接關(guān)系。

      場(chǎng)景2:當(dāng)共享介質(zhì)位于兩臺(tái)交換機(jī)之間用以代替兩臺(tái)交換機(jī)之間的直連物理鏈路時(shí),此時(shí)利用規(guī)則1無(wú)法判斷并獲取共享介質(zhì)信息。

      場(chǎng)景3:當(dāng)共享介質(zhì)位于多臺(tái)交換機(jī)之間時(shí)(兩臺(tái)以上),會(huì)有兩個(gè)以上的根端口存在直連關(guān)系,此時(shí)規(guī)則1不成立。

      針對(duì)上述場(chǎng)景,推導(dǎo)出如下連接關(guān)系的判斷規(guī)則:

      設(shè)交換機(jī)Si的根端口為Si j,Sij的指定交換機(jī)為Sk,當(dāng)交換機(jī)的非根端口Sk l與端口Sij的指定端口信息相等時(shí),端口Sij與Sk l直連,若此時(shí)還有其他端口Smn與端口Sk l的指定端口信息相等,則在交換機(jī)Si,Sk,Sm之間存在共享介質(zhì)。

      根據(jù)設(shè)備連接關(guān)系判斷規(guī)則1還可以得出,當(dāng)端口Sij和Skl直接連接時(shí),若Aij∩Akl≠{?},則這兩個(gè)端口間存在共享介質(zhì)。

      共享介質(zhì)連接關(guān)系判斷規(guī)則1:當(dāng)共享介質(zhì)位于網(wǎng)絡(luò)邊緣用以接入主機(jī)設(shè)備的時(shí)候,對(duì)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)不產(chǎn)生影響,那么交換機(jī)Aij中所包含的MAC地址均為主機(jī)MAC地址,利用設(shè)備連接關(guān)系判斷規(guī)則3可得出交換機(jī)、共享介質(zhì)及下聯(lián)所有主機(jī)的連接關(guān)系,從而得出場(chǎng)景1的拓?fù)潢P(guān)系。

      共享介質(zhì)連接關(guān)系判斷規(guī)則2:根據(jù)設(shè)備連接關(guān)系判斷規(guī)則1,如果當(dāng)有Aij∩Akl≠{?}時(shí),則可得出在交換機(jī)Si與Sk之間存在有共享介質(zhì),并且通過(guò)Sij端口與Skl端口進(jìn)行連接,從而推出場(chǎng)景2的拓?fù)潢P(guān)系。

      共享介質(zhì)連接關(guān)系判斷規(guī)則3:當(dāng)交換機(jī)Si在滿足設(shè)備連接關(guān)系判斷規(guī)則1的情況下,根端口Sij與多個(gè)端口的指定端口信息相等時(shí),則說(shuō)明交換機(jī)端口Sij連接有共享介質(zhì),相等的端口同時(shí)接入共享介質(zhì),從而推導(dǎo)出場(chǎng)景3的拓?fù)潢P(guān)系。

      2.3.2 算法描述

      具體算法的實(shí)現(xiàn)步驟簡(jiǎn)述如下:

      1)利用SNMP協(xié)議取得交換機(jī)列表與生成樹端口表,并讀取相應(yīng)的地址轉(zhuǎn)發(fā)表信息。

      2)根據(jù)設(shè)備連接關(guān)系判斷規(guī)則得到交換機(jī)的端口之間的連接關(guān)系,從而得出交換機(jī)與交換機(jī)的直連關(guān)系。

      3)運(yùn)行改進(jìn)的樹型剪裁算法,得到AFT算法的拓?fù)浒l(fā)現(xiàn)結(jié)果。

      4)運(yùn)行廣度優(yōu)先的組合式算法,合并STP算法和AFT算法的拓?fù)浒l(fā)現(xiàn)結(jié)果。

      5)將連接關(guān)系中各端口出現(xiàn)的頻率進(jìn)行統(tǒng)計(jì),如果某一個(gè)端口出現(xiàn)的頻率多于一次,則該端口與共享介質(zhì)間存在連接,再取得剩余端口的地址轉(zhuǎn)發(fā)表,如果交集為非空,則兩端口間存在共享介質(zhì)。

      6)根據(jù)設(shè)備連接關(guān)系判斷規(guī)則3收集步驟2)推導(dǎo)出的與交換機(jī)相連的主機(jī)的MAC地址信息。如果該端口中主機(jī)數(shù)量大于1,則該端口連有共享介質(zhì),再根據(jù)共享介質(zhì)連接關(guān)系判斷規(guī)則對(duì)共享介質(zhì)連接關(guān)系進(jìn)行推導(dǎo)。

      7)獲取交換機(jī)的VLAN標(biāo)識(shí)dot1qPvid,將取值相同者置于同一集合,dot1qPvid取值即為VLAN號(hào)。

      8) 獲 取 索 引 值 dot1qVLANIndex、列 表dot1qVLANCurrentEgressPorts的內(nèi)容,得出每個(gè)VLAN的所有端口信息。值得注意的是,對(duì)VLAN信息進(jìn)行處理時(shí),dot1qVLANIndex參數(shù)不能直接被讀取,可通過(guò)SNMP提 供 的GetAll List()方 法(SNMPv1版 本 采 用getnext()方法)得到對(duì)應(yīng)的OID與Value。然后將條目中的索引值分離出來(lái)即可得到每個(gè)VLAN所包含的交換機(jī)以及端口的信息。

      9)根據(jù)獲取到的設(shè)備信息進(jìn)行判別,收集設(shè)備的OID信息。

      具體的拓?fù)浒l(fā)現(xiàn)流程如圖1所示。

      圖1 拓?fù)浒l(fā)現(xiàn)流程圖

      2.3.3 算法測(cè)試驗(yàn)證

      基于實(shí)際情況,選用某公司的網(wǎng)絡(luò)作為測(cè)試網(wǎng)絡(luò)。該網(wǎng)絡(luò)環(huán)境相對(duì)較復(fù)雜,可以滿足本課題研究的異構(gòu)性(滿足廠商的多樣性)。整個(gè)網(wǎng)絡(luò)劃分了上百個(gè)VLAN,且符合現(xiàn)代較為主流的網(wǎng)絡(luò)規(guī)劃標(biāo)準(zhǔn),完全可以滿足本課題對(duì)于多子網(wǎng)的網(wǎng)絡(luò)環(huán)境要求。由于網(wǎng)絡(luò)規(guī)模相對(duì)比較大,系統(tǒng)的拓?fù)浒l(fā)現(xiàn)時(shí)間在3 min左右,進(jìn)一步驗(yàn)證了本組合式物理拓?fù)浒l(fā)現(xiàn)算法在真實(shí)網(wǎng)絡(luò)環(huán)境中的有效性和可行性。

      圖2 是對(duì)該公司的部分網(wǎng)絡(luò)進(jìn)行測(cè)試所得的結(jié)果。

      圖2 實(shí)際網(wǎng)絡(luò)測(cè)試結(jié)果

      3 結(jié) 語(yǔ)

      準(zhǔn)確的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)對(duì)于網(wǎng)絡(luò)管理、安全管理、性能分析等起著非常重要的作用。本文以基于STP的算法為基礎(chǔ),利用改進(jìn)后基于AFT的算法進(jìn)行擴(kuò)充,最后根據(jù)合并規(guī)則將兩種算法的拓?fù)浒l(fā)現(xiàn)結(jié)果進(jìn)行有效的融合,實(shí)現(xiàn)了跨VLAN的異構(gòu)多子網(wǎng)的物理拓?fù)浒l(fā)現(xiàn),避開了網(wǎng)絡(luò)拓?fù)浒l(fā)現(xiàn)協(xié)議不一致,網(wǎng)絡(luò)設(shè)備多樣性等帶來(lái)的困難,在地址轉(zhuǎn)發(fā)表不完整的情況下能夠準(zhǔn)確、全面、高效地發(fā)現(xiàn)網(wǎng)絡(luò)設(shè)備。實(shí)驗(yàn)表明,算法從完整率、準(zhǔn)確率、網(wǎng)絡(luò)負(fù)載等指標(biāo)的綜合情況來(lái)看,有一定的優(yōu)勢(shì),并且可以作為一種有效的算法應(yīng)用到實(shí)際的跨VLAN的異構(gòu)多子網(wǎng)環(huán)境中,具備一定的實(shí)用價(jià)值和推廣意義。

      猜你喜歡
      交換機(jī)端口介質(zhì)
      信息交流介質(zhì)的演化與選擇偏好
      一種端口故障的解決方案
      淬火冷卻介質(zhì)在航空工業(yè)的應(yīng)用
      修復(fù)損壞的交換機(jī)NOS
      端口阻塞與優(yōu)先級(jí)
      使用鏈路聚合進(jìn)行交換機(jī)互聯(lián)
      初識(shí)電腦端口
      8端口IO-Link參考設(shè)計(jì)套件加快開發(fā)速度
      PoE交換機(jī)雷擊浪涌防護(hù)設(shè)計(jì)
      羅克韋爾自動(dòng)化交換機(jī)Allen-Bradley ArmorStratix 5700

      富蕴县| 凤山县| 淮北市| 囊谦县| 宁武县| 张家港市| 建瓯市| 福州市| 滁州市| 巴东县| 台湾省| 肃宁县| 霍林郭勒市| 治多县| 洪江市| 镇平县| 东平县| 义马市| 盐城市| 容城县| 台东县| 河东区| 江孜县| 老河口市| 泰顺县| 肃北| 旺苍县| 宝应县| 木里| 德保县| 阳城县| 波密县| 南召县| 四川省| 阿鲁科尔沁旗| 顺义区| 宁陵县| 宁陕县| 桦川县| 许昌市| 喜德县|