複製鏈接
請複製以下鏈接發送給好友

遠程交換機

鎖定
基於配置與用户管理、安全管理等數據結合,對局域網進行遠程管理的交換機。有管理方案,管理程序。還需要進行集中維護。
中文名
遠程交換機
外文名
RX Remote Exchange
拼    音
yuǎn chéngjiāo huàn
詞    性
名詞
管理方案結構
軟件結構 硬件結構
優    點
節省長途通訊費用

遠程交換機管理方案

概述
以51Flash單片機為控制器對交換機進行遠程管理的軟硬件實現方案。該方案以廉價的51單片機為處理核心,管理程序存儲在單片機內置的Flash中,外接小容量的SRAM緩衝數據,通過交換機固有的以太網接口實現帶內網管。管理界面採用Web/Browser方式,用户通過Web瀏覽器查詢交換機的狀態,並實施配置控制,比如,查詢端口的統計數據,配置交換機的VLAN,QOS,Trunking,及對端口進行啓/閉控制等。經過用户的實際使用,證明該方案是一款高性價比的交換機遠程管理實現方案。
硬件結構
本方案採用低電壓、內置64KBFl程序存儲器、主頻高達40MHz的Winbond80C51兼容型單片機W78LE516作為控制器,其大多數指令的執行都能在3個機器週期完成。單片機外接32KB的SRAM作為管理幀緩衝器。另外,為了調試需要,系統還配置了一個串行控制口,將單片機的P3.0、P3.1接到RS232串口收發器上,選擇單片機的Tier1作為串口的時鐘發生器。交換機的主交換處理器採用Broadcom公司的BCM53x8M芯片,其內置的PHY收發器使系統實現非常簡潔、靈活,高帶寬的擴展能力方便了從8口到24口的系統實現,更為重要的是,它集成了SMP(SerialManagementPort)管理模式,通過SPI(SerialPeripheralInterface)物理接口訪問管理幀,這就使控制處理器不僅能夠直接配置和控制交換芯片,還能使控制處理器通過SPI接口與交換結點(連接交換機的主機)進行信息交換,實現對交換機的帶內管理。
軟件結構
本方案將管理功能分為三個模塊實現:SPI接口、網絡協議處理、類CGI的交換機控制。
SPI接口模塊實現控制處理器與交換芯片間的信息交換。BCM53x8M交換芯片的SPI接口是標準
SPI接口的子集,物理上共有SCK,SS#,MISO,MOSI四根信號線,單片機通過P1接口連接交換芯片的
SPI接口。SPI提供讀/寫/快速讀/快速寫四種事務處理模式,普通讀/寫操作一般只對單個寄存器進行,而快速讀/快速寫可在一次事務中訪問多個(最多8個)連續地址的寄存器,提高了傳輸帶寬。通過SPI,單片機能夠讀/寫交換芯片的內部寄存器,並進而訪問緩衝在交換芯片存儲器中的管理幀。網絡協議處理模塊主要處理各種必須的協議數據單元(PDU)。當一個管理幀到達後,網絡協議處理模塊首先檢驗幀的正確性,然後根據幀的內容將接收到的數據報分發到不同的協議處理例程。這些例程再根據數據報的具體內容進行相應的處理。。網絡協議處理模塊包含的主要協議處理例程有:ARP(地址解析協議)例程,PING(IP控制報文)例程,TCP/IP(控制傳輸協議)例程,以及HTTP(超文本傳輸協議)例程。根據本方案中實際的需要,考慮到Flash程序存儲器的容量,以及單片機的處理能力,對以上這些網絡協議進行了適當的裁剪。類CGI的交換機控制模塊是實際控制交換機工作的部分,該模塊以管理者指令為輸入,將管理指令轉換為交換機的控制邏輯。管理者的指令經過網絡協議模塊處理後,由類CGI模塊解析其合法性,再形成交換機的目標配置,目標配置通過SPI接口讀寫交換芯片。
功能及實現途徑
控制單片機與交換芯片間的連接通過SPI接口,這是一種簡單的接口協議,數據通過主設備產生的時鐘串行輸入/輸出,不同交換芯片以片選信號來選通。
單片機以一個個事務的形式訪問交換芯片,每一次事務開始時,首先發送讀/寫/快速讀控制命令,然後發送讀/寫操作的寄存器號,最後讀入數據,或者向交換芯片寫數據。管理幀的操作也不例外。BCM53x8M設置了連續的8個8bit寄存器用作訪問管理幀的窗口,當讀/寫完全部8個寄存器後,芯片自動重新裝入下一組8個字節,或將8個字節寫入緩衝區中,直到完整的一幀數據操作結束。SPI接口只能進行輪詢式的訪問,無法實現中斷。
單片機在SRAM中開闢了一個24KB的緩衝區,用於存儲完整的一幀數據報,從SPI讀入的報文,或將要輸出的報文都緩衝在這個固定大小的存儲區中,避免數據的拷貝。通過SPI訪問的以太網幀比IEEE802.3標準的幀增加了10個字節,用以標識幀的類型,幀的來源或出口,以及4個字節的附加幀校驗。附加的幀校驗將附加的字節計算在內,採用FCS-32校驗多項式。在本方案中,當接收到一幀管理報文並經過校驗後,還要將這些附加字節進行脱幀處理。在接收到的以太網幀中還能獲取發送者的MAC地址,如果報文需要應答,這就是應答報文的目的地址。因此,在實現ARP地址解析時,我們裁剪了ARP地址解析的請求部分—既控制程序從來不發送APR地址解析請求,只應答交換結點發出的ARP請求。通常,IP報文完成數據報在網絡上的各個子網間傳播的尋路功能,IP報是TCP報文的載體。對本方案來講,IP報文的解析方式相對比較單一,我們比較關心的字段是訪問者的IP地址,報文長度及協議類型。IP報文提供遠程管理者的IP地址,通過設置管理者地址,可將訪問者的IP地址作為驗證管理員身份的一種方式。 [1] 

遠程交換機管理程序

基於Socket實現Telnet的遠程交換機管理程序
工作原理
交換機(Telnet服務器)運行Telnet守護進程,等待運行在管理員機上的交換機管理進程(客户端)的請求.管理員遠程登錄請求服務器的服務,守護進程接收到請求後,派生出子進程、仿真終端(偽終端)與管理員Telnet進程交互.管理員輸入賬號和口令進行遠程登錄,如果登錄成功,管理員在鍵盤上輸入的每一個字符都傳到遠程主機服務器上.管理員輸入配置交換機的終端命令,子進程接收命令,將用户輸入的命令傳給交換機操作系統進行處理,並將處理結果傳給用户進程,用户進程將結果顯示在管理員屏幕上.
利用Socket編程實現Telnet控制交換機
Socket的工作原理
Socket(套接字)是建立在傳輸層協議(主要是TCP和UDP)上的一種規範,它定義了一種網絡上跨平台的應用程序進程間的通信規範(也是一種編程規範).有一個抽象的“通道”,這個“通道”的兩端就是兩個Socket.Socket為進程提供了通訊接口,它對進程屏蔽了底層通信軟件和具體操作系統的差異,進程在網絡上傳輸和接收數據都通過這個Socket接口來實現.Socket用一個五元組表徵:(協議,本地IP,本地端口,遠程IP,遠程端口),進程只需關心協議、遠程IP、遠程端口.在應用程序開發中,可以像使用文件句柄一樣,直接對Socket進行讀寫操作,就能達這裏以Delphi為例,程序中需要用到Internet控件組的ClientSocket組件.ClientSocket組件有兩個重要屬性:Port和Address,它們決定通信的協議性質和服務器.通過對Port和Address賦值,再啓動控件的連接、收發方法,就能實現相應的網絡通信.Telnet服務進程的默認端口是23,若把Port的值賦為23,ClientSocket組件向服務器提交的就是Telnet請求、命令.因為程序本身只用於遠程控制交換機,所以,不需要ServerSocket控件.
遠程控制交換機程序的關鍵實現代碼
Telnet遠程交換機程序關鍵功能有:請求或斷開Telnet連接、向交換機發送字串(終端命令、賬號和口令)、接收交換機發來的字串並顯示.下面以用Delphi實現為例,介紹這些關鍵功能的實現代碼,而非實用程序的概貌.首先,在DelphiIDE建立項目,然後新建一個Form,在Form上添加控件.請求Telnet連接交換機
procedureTForm1.btn_connClick(Sender:TObject);
begin
∥設置socket控件屬性前先斷開連接clientsocket1.Active:=false;
∥指定要Telnet交換機的IP
clientsocket1.Address:=trim(edt_ip.Text);
∥Telnet端口號為23
clientsocket1.Port:=strtoint(edt_port.text);
∥開始連接,連接成功與否應做判斷,但這裏不再列出判斷及處理代碼
clientsocket1.Active:=true;
end;
斷開Telnet連接
procedureTForm1.btn_disconnClick(Sender:TObject);
begin
∥斷開Telnet連接
clientsocket1.Active:=false;
end;
向交換機發送字串
procedureTForm1.btn_sendClick(Sender:TObject);
begin
iflength(trim(edt_send.text))=0then
∥如果文本框為空,發送空格clientsocket1.socket.SendText(#32)
else
∥否則,發送文本框內容,並加發回車鍵clientsocket1.socket.SendText(trim(edt_send.
text)+#13);
end;
接收交換機發來的字串並顯示
procedureTForm1.ClientSocket1Read(Sender:TObject;Socket:TCustomWinSocket);
Begin
∥從接收緩衝區讀出內容,在memo1顯示memo1.Lines.add(clientsocket1.Socket.
ReceiveText);end;
用户數據與交換機遠程管理結合
用户數據與交換機遠程管理結合的原理是:建立交換機端口表、樓幢信息插座表、樓幢房間表、用户信息表,確立交換機端口、樓幢信息插座、樓幢房間、用户之間的映射關係.當用户需要開户、停用或改變服務檔次等時,系統通過上述表和映射關係,找到用户對應的交換機端口(或VLAN),然後針對此端口進行遠程設置.管理員只需要修改用户的信息,就能激發系統自動去修改交換機配置.這樣,就不用面向交換機層次而是管理信息層次進行工作.下面舉一個實現開啓/關閉用户上網端口的例子.設用户對應的交換機管理IP是192.168.1.55、端口是0槽11口,實現代碼是:
∥Telnet連接192.168.1.55
clientsocket1.Active:=false;
clientsocket1.Address:=‘192.168.1.55’;clientsocket1.Port:=23;
clientsocket1.Active:=true;
∥Telnet登錄
clientsocket1.socket.SendText(用户賬號+#13);clientsocket1.socket.SendText(口令+#13);∥進入配置級別
clientsocket1.socket.SendText(’system’+#13);∥開啓/關閉用户上網端口
clientsocket1.socket.SendText(’interfaceethernet0/11’+#13);
clientsocket1.socket.SendText(’undoshutdown’
(或clientsocket1.socket.SendText(’shutdown’+#13);)
∥斷開Telnet連接
clientsocket1.Active:=false;
上述代碼為討論方便,交換機IP和端口直接使用了常量.實際編程中,應是用變量在數據庫中讀出相應的IP和端口值,再套入clientsocket控件的socket.sendtext方法中才行. [2] 
基於TCP/IP協議的遠程交換機管理程序
程序主要設計構想
交換機遠程控制程序設計從以下幾點着手:
(1)程序主要採用服務器/客户(server/client)
的模式,以事件驅動方式運行;
(2)服務器和客户端的連接基於TCP/IP協議;
(3)服務器端程序響應客户端的連接請求並接收其發送的指令,實現對交換機的操作;
(4)通過設置定時器定時將交換機的響應發回到客户端,並在客户端的終端上顯示;
(5)為了實現對交換機操作的安全控制,服務器端要設置客户合法性驗證,並記錄所有連接日誌
和對交換機的操作;
(6)程序應包含普通終端的常用功能(如輸入指令緩存區、功能鍵的設置、歷史記錄的存檔、日誌
等)。
程序的具體實現
編寫TCP/IP通信程序需要採用Winsock編程,可以通過調用WinsockAPIs來實現,很多程序設計語言都可以做到。現介紹一種最簡單的設計方法,即採用VB中的Winsock控件。該控件提供了訪問TCP和UDP網絡服務的方便途徑。通過設置控件的屬性並調用其方法就可輕易連接到一台遠程計算機上,並且還可雙向交換數據。關於該控件具體的屬性、方法和事件可以參照相關的開發手冊。熟悉了上述Winsock控件後,再結合MSComm控件,按照上述的設計流程,就可以設計出遠程控制終端的具體程序了。在具體設計過程中,還要注意考慮以下問題:
(1)對於連接出錯的處理(包括與交換機的連接和TCP網絡連接)。可以針對出錯類型和代碼寫出相應的出錯處理程序。
(2)設置偵聽端口時要注意端口號的範圍,避免使用一些熟知端口,例如:80是用於HTTP、21是用於FTP等。建議使用2000以上的端口號,避開衝突。
(3)在服務器端,如果是無人值守機房,要考慮程序的關閉保護,確保程序始終處於正常的偵聽狀態。如果有必要可以設置成服務器端程序不能被關閉。
(4)在服務器端可以設置多種安全保護措施,如指定合法連接者的IP地址、設置合法客户的ID和Password,從而避免非法連接者對交換機的操作。
(5)編寫終端程序時,要考慮終端窗口所能顯示文本內容的最長限度,避免出現不必要的程序運行錯誤。 [3] 

遠程交換機集中維護

遠程交換機集中維護系統的軟件設計分析
(1)系統功能設計。系統功能設計主要包括以下幾個方面:①聯機控制模塊:此模塊主要是控制接入站點調度交換機網絡連接狀態,通過“連接”、“斷開”具體控制每個站點網絡接入情況;②系統狀態模塊:此模塊主要是顯示接入站點調度交換機的運行狀態和告警信息。簡潔、直觀的查看運行板件情況和具體故障點;③管理設置模塊:此模塊主要是接入的調度交換機站點連接參數設置、修改和權限管理。通過設置接口類型、串口、速率、IP地址等參數,將站點配置到系統中;④信令分析模塊:此模塊主要對相應站點調度交換歷史執行記錄的查詢、分析,通過對相應操作過程的查詢,判斷主機是否運行正常,及出現故障時,判斷故障點;⑤數據監控模塊:此模塊主要進行相應站點調度交換主機內部數據的顯示、修改,可以快捷定位到狀態區、被叫區、性能區、呼叫類、被號指、被號區、主號區、連號區、系參表、中號表、2M區、被換號、主換號、權限區、時隙區、收數區的相應數據位置;⑥維護分析模塊:此模塊主要進行相應站點調度交換主機各子系統設置數據的查詢、修改、比較、設置和恢復,以及相應站點調度號碼數據的查詢、設置和分析;⑦登入與登出模塊:此模塊主要使用不同用户名、密碼登陸或退出系統,通過後台對使用該系統的用户進行權限劃分後,不同的用户名可以查看的信息、操作的範圍各不相同。
(2)遠程控制軟件設計。遠程控制軟件指的是一台計算機通過網絡實現對另一台計算機設備進行遠距離控制的軟件,主要包括兩個部分,即主控端程序、被控端程序,被控端的功能是通過屏幕、鼠標、鍵盤等將數據信息傳送至主控端,主控端對被控端傳輸的數據信息進行雲計算,並將數據信息展示給用户,用户通過主控端能夠實現對被控端的遠程控制,獲得進程列表、窗口、圖像等信息,通過操作鍵盤、移動鼠標等,對被控端程序進行中止、激活等遠程操作。
遠程交換機集中維護系統的硬件設計分析
(1)網絡接口板設計。網絡接口板控制系統主要由CPU處理器、系統總線接口、二次電源供電、網口處理器和網絡接口組成,調度交換機通過系統總線或串行接口與CPU處理器進行數據交互,CPU接收主機數據,打包成TCP/UDP數據包,經網口處理器調製後通過網絡接口傳輸,網口處理器接收到的數據經CPU解包驗證後發送給主機,完成主機與網絡間的數據交互。
(2)客户端設計。調度機遠端集中維護系統的客户端使用PC機,可登陸到服務器進行數據查詢和修改,並可顯示各個調度機的實時狀態和告警信息。
(3)服務器設計。調度機遠端集中維護系統的服務器採用“雙機熱備”的形式搭接,確保數據實現實時備份,有效預防數據丟失,保障了數據的連續性,實現了故障點轉移。
(4)接口設計。通過與TMS系統研發人員溝通,服務器使用TCP協議向TMS系統發送配置和告警信息進行擴展呈現。接口功能包括:接入方式、接入性能、網絡安全告警通知、配置同步、告警同步、歷史性保留、安全管理以及用户權限認證。
遠程交換機集中維護系統輸入與輸出系統
(1)輸入系統設計。系統需要輸入的內容包括調度交換機的站點接入詳細信息、主機各子系統配置信息、主機內部數據狀態信息、實時信令執行狀態信息、網絡連接狀態信息、運行狀態信息等,以上的數據信息輸入方式如下:①鍵盤及鼠標點擊輸入:調度交換機的站點接入詳細信息、網絡連接狀態信息;②系統採集輸入:調度交換機的主機各子系統配置信息、主機內部數據狀態信息、實時信令執行狀態信息、運行狀態信息;③Excel表格導入:調度交換機的主機各子系統初始配置信息。為了保證輸入系統的安全性,應該加強對輸入系統的安全性分析。電網調度指揮的主要方式為調度電話,由此可見其重要性,調度交換機遠程集中維護系統輸入系統的安全性分析主要包括以下幾個方面:①交換設備維護密碼,在所屬的調度錄音機上安裝IXP3000、HARRIS-MAP等交換機機型的管理維護性軟件,在使用管理維護軟件時,需要輸入用户名、密碼進行認證,只有相應權限的用户才允許訪問系統;②調度錄音機登錄密碼,變電站調度錄音機採用的工業級計算機操作系統,用户需要輸入用户名以及密碼才能夠訪問系統;③遠程控制軟件多重認證,軟件多重認證方式是在主控和被控端均設置密碼,為了提高信息輸入的安全性,通常設定不同的加密 [4] 

遠程交換機應用

通過“九七”網絡實現控制及維護
由於利用了現有的“九七”網絡設備,所以無須增加新的硬件設備,僅需要在服務器端和客户端微機上配置正確的IP地址就可以了。另外,由於服務器端程序較小,對服務器端微機配置要求也不高,基本能安裝Windows95和網卡就可以了。如果微機有2個串口,還可以接上2個終端,只要配置不同的端口號就行。這種應用特別適合於各區局對無人值守機房的遠程維護。
實現集中主動式停復話工作
我們使用的自動停復系統都是各機房的應用程序定時查詢停復話數據庫,發現有工單就提取並連接交換機運行,因此機房的前台程序長期處於查詢狀態,效率不高。如果採用這種遠程控制終端方式,就可以實現集中主動式的停復話工作。
方便通過Internet進行遠程技術支持
由於服務器和客户端是採用TCP/IP協議建立連接,所以在需要遠程技術支持時,服務器端首先通過撥號方式連入Internet,客户端遠程接入Internet後,先獲取服務器端動態分配的IP地址(可以通過聊天室等軟件獲取),然後就可以實現對交換機的遠程控制。本人利用所編寫的遠程控制軟件,採用一對14.4kbit/s的Modem通過Internet來模擬交換機的遠程控制,實驗結果表明完全能夠做到發送完指令就立刻收到交換機的響應報告。這種應用尤其適合於跨省市的技術支持和維護,與常規的撥號方式相比,節省了大量的長途通信費用。由於在服務器端可以隨時指定合法連接者的IP地址,再加上合法的客户端ID和Password的保護,這種應用就能避免非法客户對交換機終端的接入。 [3] 
參考資料