馬玉國 仲立婷
【摘要】針對電信企業(yè)內(nèi)部網(wǎng)絡(luò)設(shè)備復(fù)雜、多樣、分散等特性,通過使用TCP/IP協(xié)議編程實現(xiàn)了此類設(shè)備的智能化管理,實時收集各網(wǎng)絡(luò)設(shè)備的運行狀態(tài),并實現(xiàn)與各類網(wǎng)絡(luò)設(shè)備的一對多對話,簡化了維護人員的操作,提高了企業(yè)的自動化管理水平。
【關(guān)鍵詞】網(wǎng)絡(luò)設(shè)備;TCP/IP協(xié)議;TELNET協(xié)議;工作腳本
一、背景
隨著各電信運營商全業(yè)務(wù)市場運營的開展,電信企業(yè)內(nèi)部的競爭日趨激烈,在電信企業(yè)如火如荼的競爭過程中,企業(yè)內(nèi)部的人力、成本等資源都集中到了市場營銷、客戶服務(wù)與維系等窗口中,作為后臺網(wǎng)絡(luò)、設(shè)備維護人員,如何使用有限的人力資源和維護成本,來保障設(shè)備更穩(wěn)定、更高效的運行成了各電信企業(yè)運維管理、系統(tǒng)支撐部門必須考慮的問題。
二、問題分析
電信企業(yè)內(nèi)部接入網(wǎng)絡(luò)的設(shè)備主要由應(yīng)用服務(wù)器、生產(chǎn)終端設(shè)備和內(nèi)部局域網(wǎng)的組建、管理、支撐設(shè)備組成。在日常的維護過程中,我們發(fā)現(xiàn)這些設(shè)備存在以下特性:
1)設(shè)備的多樣性。上述設(shè)備中有網(wǎng)絡(luò)交換機、路由器、小型機、工控機等,涉及操作系統(tǒng)有HP UNIX、SCO UNIX、LINUX、SUN SOLARIS等多種。
2)設(shè)備數(shù)量較多。隨著電信企業(yè)內(nèi)部的信息化水平不斷提高,各類設(shè)備數(shù)量也不斷增加,僅以路由器、交換機為例,德州的數(shù)量就數(shù)以百計。
3)地理位置的分散性。由于上述設(shè)備主要為各級分公司的系統(tǒng)提供服務(wù),由于各級分公司、營業(yè)部位置的相對分散,就決定了此類設(shè)備在地理位置上的分散性。
設(shè)備多樣、數(shù)量龐大、位置分散的特性就造成了此類設(shè)備管理的復(fù)雜性,那么,如何對上述設(shè)備進行有效的維護和管理呢?本文結(jié)合德州的實踐經(jīng)驗,基于TCP/IP協(xié)議族,提出了電信企業(yè)內(nèi)部設(shè)備智能化管理系統(tǒng)設(shè)計方法。
三、技術(shù)介紹
傳輸控制協(xié)議(TCP)、Telnet協(xié)議都是TCP/IP協(xié)議族中的一員。這兩種協(xié)議為用戶提供了在本地計算機上完成連接、控制遠程服務(wù)器的能力。在終端使用者的電腦上使用TCP或telnet協(xié)議,連接到遠程服務(wù)器,并可以通過程序,在本地終端上輸入命令,送到服務(wù)器上運行,就像直接在服務(wù)器的控制臺上輸入一樣。
TCP協(xié)議、TELNET協(xié)議是各類設(shè)備或其操作系統(tǒng)上普遍支持的兩種網(wǎng)絡(luò)協(xié)議,基于上述兩種協(xié)議,通過編程可以實現(xiàn)對各種網(wǎng)絡(luò)設(shè)備自動控制、數(shù)據(jù)采集,來為我們的維護工作提供便利。
四、系統(tǒng)結(jié)構(gòu)
應(yīng)用服務(wù)器通過C語言編寫程序通過TCP協(xié)議、TELNET協(xié)議與各網(wǎng)絡(luò)設(shè)備建立連接通道,通過兩種方式與設(shè)備之間進行交互。一種方式是定時解析通過既定的數(shù)據(jù)采集腳本向各網(wǎng)絡(luò)設(shè)備發(fā)送數(shù)據(jù)采集命令,由結(jié)果分析程序?qū)⒚罘祷氐慕Y(jié)果進行分析,寫入數(shù)據(jù)庫。第二種方式,終端用戶通過主動向應(yīng)用服務(wù)器發(fā)起查詢、操作命令請求,由應(yīng)用服務(wù)器將操作命令對一臺或多臺設(shè)備進行命令處理,并將處理結(jié)果返回。
在整個處理過程中,應(yīng)用服務(wù)器扮演了兩種角色,一方面與各網(wǎng)絡(luò)設(shè)備建立雙向命令處理通道,一方面通過發(fā)布網(wǎng)頁來接受終端用戶的查詢、操作命令請求。
五、系統(tǒng)實現(xiàn)關(guān)鍵技術(shù)難點分析
在智能化網(wǎng)絡(luò)設(shè)備管理系統(tǒng)的實現(xiàn)過程中,我針對系統(tǒng)實現(xiàn)過程的兩個重點、難點問題,來介紹系統(tǒng)的設(shè)計方案。
1、TCP、TELNET協(xié)議接口設(shè)計
在使用TCP、TELNET協(xié)議與各網(wǎng)絡(luò)設(shè)備連接過程中,在兩個過程中下可能會出較長的時間延遲。
(1)在使用SOCKET、CONNECT函數(shù)與網(wǎng)絡(luò)設(shè)備建立連接的過程中,如果遠程設(shè)備掉電,或出現(xiàn)局部的網(wǎng)絡(luò)中斷,這部分設(shè)備在整個局域網(wǎng)中將變?yōu)椴豢梢姞顟B(tài)。而無論是TCP協(xié)議還是TELNENT協(xié)議,在面向連接的協(xié)議,如果CONNET函數(shù)在建立連接的過程中阻塞,會進行多次重試,直到重試次數(shù)超過操作系統(tǒng)設(shè)置最大超時次數(shù)位置,這個過程一般會持續(xù)3分鐘左右的時間。(2)在CONNECT連接建立后,與SOCKET套接字進行命令發(fā)送的過程中,如果服務(wù)器對命令返回的結(jié)果未正確識別出有效的命令結(jié)束符號,或由于網(wǎng)絡(luò)設(shè)備自身硬件故障的原因造成命令處理過程放緩、或不執(zhí)行,從而無法獲得正確的返回結(jié)果,造成長時間存在一個無效連接,這實際也是一種阻塞狀態(tài)。
上述兩種狀態(tài)如果在程序編寫的過程中,如果不增加超時處理,將大大放緩命令的執(zhí)行效率,造成終端用戶對系統(tǒng)的認(rèn)同度下降。因此,在上述兩種過程中,我們首先需要兩種基本數(shù)據(jù)局域網(wǎng)內(nèi)部的正常時間延遲、網(wǎng)絡(luò)設(shè)備的回顯延時。
(1)局域網(wǎng)內(nèi)部的正常通信延時的計算過程中,可要選取各IP網(wǎng)段的最大網(wǎng)絡(luò)延時作為參考。(2)網(wǎng)絡(luò)設(shè)備的回顯延時,由于網(wǎng)絡(luò)設(shè)備的生產(chǎn)廠家、設(shè)備型號、硬件配置、軟件配置、發(fā)送命令的不同,回顯時間延時也會不同,這種情況下,對于同廠家、同型號設(shè)備,選取一個日常維護操作處理時間最長的操作時間作為參考。
通過上述兩種時間的界定,使用SELECT函數(shù)來設(shè)置超時時間,在超時時間到達前如果沒有收到正確的命令返回結(jié)果描述符,則產(chǎn)生一個中斷信號,來打破阻塞狀態(tài)。
2、各網(wǎng)絡(luò)設(shè)備采集命令管理問題
由于網(wǎng)絡(luò)設(shè)備類型眾多、變更較為頻繁,如果將所有的操作、數(shù)據(jù)采集命令都固化到程序中,雖然會對程序代碼的執(zhí)行效率有一定的提升作用,但是同時會面臨程序拓展性差、維護困難的問題。會讓我們工作陷入不斷進行代碼更新,同時由于設(shè)備更替,代碼中又會產(chǎn)生部分冗余代碼僵局。為解決此問題,首先,我們編寫了一個工作腳本分析進程,固化部分關(guān)鍵字,如TELNET_IP(使用TELNET協(xié)議連接IP地址)、 AUTO_TCP_IP(使用TCP協(xié)議連接IP地址)、FIND(搜索返回結(jié)果串)、ENTER(輸入命令)、TO(將結(jié)果輸出到文件)等。然后,根據(jù)上述關(guān)鍵字規(guī)范,結(jié)合日常使用較為頻繁的操作命令。下面我通過SCO UNIX工控機和CISCO路由器的兩個工作腳本,來給大家介紹下此系統(tǒng)德州聯(lián)通內(nèi)部的實際應(yīng)用。
六、技術(shù)總結(jié)
在電信企業(yè)網(wǎng)絡(luò)設(shè)備智能化管理實現(xiàn)過程中,通過TCP/IP協(xié)議族協(xié)議的靈活使用,成功地解決了對多種數(shù)量龐大、位置離散的網(wǎng)絡(luò)設(shè)備的管理難題,實現(xiàn)各網(wǎng)絡(luò)設(shè)備數(shù)據(jù)的采集、入庫、顯示,以及管理人員與網(wǎng)絡(luò)設(shè)備的雙向交互。通過在德州聯(lián)通內(nèi)部的建設(shè)和使用,實踐表明此系統(tǒng)可以在網(wǎng)絡(luò)設(shè)備維護、監(jiān)控、操作方面,有效地縮短人工處理時間,此系統(tǒng)的實現(xiàn)方案對于各電信企業(yè)具有較強的借鑒意義。
參考文獻
[1]尚穆蓋姆.TCP/IP詳解(第2版).電子工業(yè)出版社,2003
[2]查普爾,蒂特爾.TCP/IP協(xié)議原理與應(yīng)用(第3版).清華大學(xué)出版社,2009
[3]UNIX平臺下C語言編程.喻志虎.清華大學(xué)出版社,2001