


摘? 要:隨著網絡規模的不斷擴大以及設備數量的日益增多,傳統城域網設備的管理方式需要不斷調整和創新,這對網絡管理系統提出了更高的要求。同時,通信運營商需要逐步脫離廠商提供的商業化網絡管理軟件,改為采用自行研發的開源軟件。文章從通信運營商網絡管理方式的現狀出發,針對帶外網絡管理系統的硬件和軟件進行了設計,并在實際網絡中進行了實驗、部署和應用,系統運行穩定。
關鍵詞:帶外;網絡管理;管理軟件
中圖分類號:TN915.07;TP393? ? ? ?文獻標識碼:A 文章編號:2096-4706(2020)24-0070-03
Design and Implementation of Out-of-Band Network Management System for Communication Equipments
HU Yingfei
(China United Network Communications Company Limited Nanjing Branch Office,Nanjing? 210036,China)
Abstract:With the continuous expansion of network scale and the ever-increasing equipment quantity,the management way of traditional metropolitan area network equipments needs constant adjustment and innovation,which puts forward the higher requirement for network management system. At the same time,communication operators need to gradually break away from the commercial network management software provided by manufacturers and change to adopt self-developed open source software. The paper starts from the current situation of network management ways of communication operators,designs the hardware and software of out-of-band network management system,and carries out the experiment,deployment and application in the actual network. The system runs stably.
Keywords:out-of-band;network management;management software
0? 引? 言
網絡管理系統可對計算機互聯網進行監控和維護,確保在網絡出現故障時能夠第一時間通知負責人進行故障定位,并做好相應的排障工作。同時,網管系統還須具備一定的網絡設備操縱能力。由此可見,網管系統自身就需要一個獨立、穩定的網絡環境。對匯聚節點設備的有效管理,可以為維護工程師提供良好的工作環境,為運行生產工作和故障維護工作提供清晰、準確的信息源。其對于縮短排障時間,減少商業損失也起到至關重要的作用。因此,通信運營商對穩定可靠的網絡管理系統的需求日益增長。此外,目前已經有部分企事業單位的網絡管理系統實現了自動運維功能,如濟南大學的吳增海設計開發了校園網故障檢測與診斷系統,山東電信設計與實現了IP網管自動化運維管理系統,自動運維將成為日后網絡管理系統的基本功能。
1.1? 研究背景
目前通信網工程中常見的網管系統為帶內網絡管理系統,利用被管設備提供的業務通道來完成網絡設備管理的組網方式。在這種方式下,網管交互信息通過設備的業務通道進行傳送。帶內組網的特點是組網靈活,不需要在網絡中添加額外的功能性設備。
近年來也有通信網絡工程使用帶外網絡管理系統作為應急管控系統。帶外組網是指借助被管設備外的其他設備所提供的通信通道來傳送網管信息,從而實現網絡管理的組網方式。與帶內組網相比,帶外組網可提供更為可靠的設備管理通路,其在被管設備出現故障時能夠及時定位網上設備信息并進行實時監控。
1.2? 研究內容
針對生產工作中的實際需求研究并設計了帶外網絡管理系統,包括以下內容:
(1)基于帶外(out-of-band)連接方式,提出了帶外網絡管理系統的基本架構。系統硬件由設備端、傳輸端、網管端三個部分組成;系統架構由用戶界面層、通信交互層、基礎網絡層和數據存儲層四個邏輯層次組成;系統軟件由自動巡檢、告警處理、日志和安全管理四個模塊組成。
(2)針對帶外網絡管理系統進行了詳細設計。設備端使用被管設備的ETH管理接口傳送網管信令,使用SDH傳輸網作為傳輸端,將網管信令輸送至網管端,最后使用網管信令匯聚交換機作為網管端的信令收斂設備將信令統一輸出至帶外網絡管理服務器。系統與公網的出口處安裝一臺防火墻,以保證網管系統的安全并提供遠程接入功能。系統使用開源代碼,實現了系統架構的四個邏輯層次,基于模塊化思想編寫了四個軟件模塊。本文在運營商的實驗網絡環境中實現了以上設計。
2? 系統設計
2.1? 硬件設計
帶外網絡管理系統的硬件結構可分為設備端、傳輸端、網管端三個部分,如圖1所示。設備端主要包括被管設備;傳輸端主要包括SDH傳輸網;網管端主要包括網管信令匯聚交換機、帶外網絡管理服務器、防火墻。
2.2? 軟件設計
本文設計與實現的帶外網絡管理系統使用Telnet協議實現網管內部網絡的設備間通信功能。從傳統的手工指令輸入查詢轉變為自動運行維護,重點在于交互模塊的運用。交互模塊的主要關注對象是被管設備及其內部設備配置和業務數據,被管設備在帶外網絡管理系統中被抽象為虛擬終端,交互模塊通過向虛擬終端機發送相應指令的方式獲取所需數據,并通過返回值來判斷下一步操作。交互模塊的流程如圖2所示。
下文是交互模塊的代碼,通過模擬終端輸入的方式,網管系統對設備進行操作并抓取設備基礎信息:
import pexpect
import sys
import datetime
dt=datetime.datetime.now()? #取當前系統時間
today=datetime.date.today().strftime('%Y%m%d')? #日期時間標準化,供文件名使用
ip=str('192.169.2.10')? #S9300內網IP地址
user=str('user') #用戶名
password=str('password')? ? #密碼
child=pexpect.spawn('telnet %s'%ip) #遠程登錄
child.expect('(?i)sername:')? ? #讀取設備返回值
child.sendline(user)? ? #輸入用戶名
child.expect('(?i)ssword:') #讀取設備返回值
child.sendline(password)? ? #輸入密碼
fout=open('/home/log'+today+'.txt','wb')? #建立輸出文件
child.logfile=fout
child.expect("\>")
print('連接已建立')
child.sendline('display device')
print('設備基礎信息保存完畢')
child.expect("\>")
child.sendline('quit\n\r')
print('退出')
fout.close()
功能模塊設計:帶外網絡管理系統軟件可分為自動巡檢模塊、告警處理模塊、日志模塊、安全管理模塊四個功能模塊。軟件功能模塊架構如圖3所示。
自動巡檢模塊啟動后,登錄被管設備并進行輪巡,通過發送相應指令,提取相應設備的數據和狀態,收集設備信息并更新數據備份資源庫,保證資源庫實時更新并擁有歷史版本數據的備份。自動巡檢模塊用于保證城域網內被管設備的正常運行,相應資源能夠獲得定期備份,是帶外網絡管理系統的核心功能。運行結果的交互代碼為:
yoki@oob_server:~/pyt$ python3 disdev.py
連接已建立
設備基礎信息保存完畢
退出
yoki@oob_server:~/pyt$
告警處理模塊啟動后,登錄被管設備并進行告警查詢,根據帶外網絡管理系統的實際需求,設定告警查詢時間節點(如三天內所有告警)、告警查詢級別(僅查詢緊急告警,或查詢所有人工操作記錄等),針對不同類型的告警查詢方式進行相應的操作,如可將三小時的緊急告警回傳到本地,發送給相應的維護工程師,也可將所有的人工操作記錄回傳到本地,使用符合SMTP協議標準的郵件將相關記錄發送給工程師主管,對人工操作進行稽核。所有告警信息使用純文本格式文檔進行存儲和傳送。如圖4所示。
日志模塊分為兩部分:
(1)被管設備的相關日志導出與備份功能。
(2)帶外網絡管理服務器自身的操作日志備份、導出與預警功能。
對被管設備而言,設備自身的登錄、操作、退出歷史將被記錄在設備內部的存儲器中,日志模塊需要定期導出這些日志,以純文本格式將其傳送到帶外網絡管理服務器進行備份。對帶外網絡管理服務器而言,需要記錄運維工程師進行的登錄、操作、退出歷史記錄,并將這些日志發送給管理員。日志模塊的功能實際上也是帶外網絡管理系統審計能力的體現。管理員可以定期對日志進行查詢和統計,確保帶外網絡管理系統在安全的生產環境中運行,相關運維工程師的操作符合運維規程。日志模塊同時也保證了設備歷史信息可回溯,在被管設備的基本配置和業務數據遭到致命破壞時,能夠通過備份的數據和日志進行恢復。如圖5所示。
帶外網絡管理系統本質上是一張專用局域網,考慮到運維工作的實際需要,本研究引入了遠程接入功能,因此需要考慮遠程接入的安全性。安全管理模塊通過虛擬專用網絡(VPN)保證用戶能夠從公網接入帶外網絡管理系統,通過用戶名和密碼登錄VPN的方式保證了網管程序和服務器免遭第三方破壞。該模塊主要牽涉到VPN功能和賬號權限分配功能。
2.3? 功能特點
本文所設計的帶外網絡管理系統采用了帶外接入方式,網管信令和業務流量傳輸通道相互獨立,傳輸端采用目前較為成熟的SDH傳輸網,SDH傳輸網為環網結構,相比樹狀結構的裸光纖接入更為穩定,且具有主備倒換功能,便于及時進行斷點尋址和排障。對VPN的訪問基于防火墻進行,由運維工程師自行架設,具有較好的安全性。
3? 結? 論
本文設計的帶外網絡管理系統,將現有的SDH傳輸網引入城域網作為網管系統的主要承載網,提高了網管信令傳輸的穩定性。同時對開源網絡管理系統軟件的開發進行了研究。本文的主要工作內容總結為:
(1)針對目前被管設備的特性,選用ETH管理接口進行數據發送。
(2)選用較為成熟的SDH傳輸網作為網管信令承載網。
(3)基于Linux系統,使用Python語言開發了開源的網絡管理系統軟件,采用模塊化設計,并可根據用戶需求進行靈活修改。
本文所設計的帶外網絡管理系統目前已經在作者的工作單位通過測試,并已正式投入到生產環境中使用。作為帶內網絡管理系統的補充,帶外網絡管理系統可以在舊系統出現異常時快速響應,供運維工程師使用。帶外網絡管理系統提供了與帶內網絡管理系統相似的用戶交互界面,運維工程師學習成本低。自動化運維功能也減少了運維工程師的重復性人工勞動,其運行效果得到工程師們的一致認可。
參考文獻:
[1] 黃旭熙,游松.以太網交換機集群與組網 [J].計算機工程與設計,2005,26(12):3288-3290
[2] 毛鑫,陳劍,徐靜.網絡設備應急帶外管控系統的設計與應用 [J].電力信息與通信技術,2019,17(1):116-121.
[3] 徐亞娟.RS-232和USB設備的以太網接口研究 [D].哈爾濱:哈爾濱工業大學,2007.
[4] 吳增海.校園網故障檢測與診斷系統的設計與實現 [D].濟南:濟南大學,2017.
[5] 董興強.山東電信IP網管自動化運維管理系統的設計與實現 [D].濟南:山東大學,2019.
[6] 樊煉,曾磊,胡莉.基于新型技術的自動化運維管理平臺研究 [J].信息通信,2018(10):78-79.
作者簡介:胡應非(1989.10—),男,漢族,江蘇南京人,運維工程師,工程碩士,研究方向:計算機網絡。