999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于并行編程的網絡拓撲信息實時處理軟件*

2021-12-23 03:04:26李朝陽徐同喬張小鋒張萬彬
通信技術 2021年10期
關鍵詞:進程信息

李朝陽,徐同喬,張小鋒,張萬彬

(中國西昌衛星發射中心,四川 西昌 615000)

0 引言

以組播信息交互為基礎的一體化綜合業務信息管理系統是融合業務實時調度、業務流程實時展示及信息基礎設施可視化管理等多種功能為一體的企業級核心應用軟件。大規模網絡拓撲實時高效的可視化監控管理作為該軟件中面向信息基礎設施管理的重要組成部分,其相應服務端組播信息發送軟件的研發面臨諸多新的難題:短時間內完成對大規模IP 地址的連通性測試;網絡拓撲狀態信息測試結果真實可靠,盡量避免由于監測軟件或網絡環境因素出現的偽結果;進一步提升網絡拓撲可視化顯示軟件的應急處置能力。

1 技術途徑

1.1 拓撲信息實時采集方法

Python3 生態下的網絡拓撲狀態信息實時采集方法的特點及其優劣見表1。綜合考慮并行編程技術、軟件可靠性、互聯網控制協議(Internet Control Message Protocol,ICMP)響應時間以及大規模高頻次測試對設備性能的影響等各方面因素,本文選擇基于ICMP 協議的方式實現對網絡拓撲狀態信息的實時采集處理。

表1 網絡拓撲狀態信息實時采集方法概略

2.2 基于Python3 生態鏈的ping 方法

數為ping_method_x();偽碼中octet3 表示IP 地址的第3 個八位組;octet4 表示IP 地址的第4 個八位組;octet3 和octet4 的取值見表2 中Num 一行所列,譬如當octet3 取值(0:5)、octet4 取值(1:255)時,構造出的IP 地址集合大小為1 270。

圖1 ping 方法應用偽碼

關于IP 地址分配情況解釋如下:設置網絡設備地址探測范圍為20×255,縱坐標(octet3)取值范圍為0~20,橫坐標(octet4)實際取值范圍1~255,構造出的目標可達主機見圖2。

圖2 測試用IP 地址分布示意

測試結果見表2,其中Num 一行反映測試IP地址集合的大小以及目標地址IP 可達率大小,譬如當50/254 的主機目標可達率為19.68%。此外,表2 中的*代表其實測值遠超出可接受范圍。

表2 基于Python3 的5 種ping 方法性能比較

2.3 面向運維的并行編程解決途徑

綜合考慮網絡拓撲狀態信息實時處理軟件在穩定性和實時性方面的實際需求,在比較分析Python3 生態中的5 種常用ping 測試方法性能優劣(見表2)的基礎上,本文提出一種采用Python3并行編程處理的、面向大規模網絡設備運維的、基于subprocess 模塊且資源占用獨立的網絡拓撲狀態信息實時測試方法。

3 軟件結構設計

網絡拓撲狀態信息實時處理軟件體系結構見圖3。整個軟件架構包括主框架、參數配置解析、核心調度模塊以及資源獨立的進程模型等4 個部分。

圖3 網絡拓撲信息實時處理軟件結構

首先,程序主框架基于PyQt5.15 開發而成,由運行參數配置模塊、參數加載器、軟件運行狀態實時監測模塊、應急處置模塊和核心調度模塊構成。

其次,參數配置解析模塊主要用于對存儲于Excel 文件[2]中的網絡拓撲參數和存儲于文本文件中的系統配置參數進行解析提取,進而為網絡數據采集、apscheduler 調度行為控制以及交互式參數配置管理提供依據和支撐。構建于Excel 解析模塊和Txt 解析模塊之上的參數加載器的作用,表述為在程序啟動前一次性加載所有參數至計算機內存。此設計成為確保網絡拓撲信息采集高效快速和整個軟件運行穩定可靠的前提和基礎。

再次,基于apscheduler3.7 開發的核心調度模塊是連接程序主框架(用戶GUI 界面)和軟件內部邏輯模塊的橋梁。從用戶操作角度而言,為確保內部子線程和進程的運行狀態信息及時反饋給軟件使用者,以Python3 類形式實現的核心調度模塊應當繼承QObject 類,使其具備Qt 的特性,進而通過signal-slot 機制實現對數據發送與線程狀態的實時監控顯示。從軟件內部邏輯的角度而言,為確保大規模網絡設備在線狀態信息的高效準確采集,核心調度模塊必須以Python3 并行編程的方式啟動相應數目的一級進程和隸屬于每個進程的若干子線程。其中,計算機CPU 的核數和apscheduler3.7 工具對進程池的支持度是開啟一級進程個數的重要參考因素。從軟件運行穩定性的角度分析,為確保用戶實時掌握組播數據入網情況及協議載荷構造的有效性,核心調度模塊必須根據加載參數的不同而分門別類構造出相應的進程執行跟蹤器,采用Python3.7.5 中開始提供的@dataclass 裝飾器的形式提供。

最后,資源獨立的進程模型是核心調度模塊依據不同參數集產生一級進程的基礎和關鍵所在。從該模型的特點而言,資源獨立性是其確保大規模IP 地址在較短時間內得以測試完畢并順利回顯的獨特優勢。前文所述的參數加載器是確保進程模型資源獨立性的重要設計手段。從內部結構而言,該模型由拓撲信息發送器、協議數據產生器、拓撲信息采集器和采集傳感器4 部分組成。其中,前3 者與相應的Python3 實現庫一一對應,如組播庫、協議庫以及struct 庫等。采集傳感器池是整個網絡拓撲信息實時處理軟件的核心所在,本質是一個基于Python 并行編程技術的線程池。考慮到后期運維的跨平臺特性,該軟件提供windows 和Linux 兩種風格的采集傳感器。

4 軟件實現過程

4.1 主程序邏輯

網絡拓撲狀態信息實時處理軟件的主程序基于PyQt 5.15 開發而成,其邏輯結構見圖4。從程序控制權更迭的時間順序而言,其運行過程包括系統參數配置、拓撲資源參數配置、參數加載、模塊初始化、并行處理、后臺執行和用戶響應7 個步驟[3]。

每個步驟的實現細節詳見圖4。其中,需要重點關注:①在第4 步模塊初始化中,將整個程序運行界定為前臺GUI 進程和后臺守護進程,其中后臺Daemon 守護進程基于apscheduler3.7 實現;②在第5 步并行處理中,存在一個內部多級嵌套線程(進程)結構。首先,為避免大量拓撲信息實時監測不至于影響用戶的響應操作,生成以調度模塊為核心的后臺守護進程,其生命周期貫穿于軟件的整個運行階段。其次,為充分發揮多核CPU 的并行特性,核心調度模塊基于apscheduler3.7 的多進程并行模式創建與CPU 核數相同的子進程,其生命周期也貫穿于軟件的整個運行階段。最后,為應對網絡拓撲狀態快速響應的實際應用需求,在每個子進程內部基于Python3 線程池技術生成與目標主機數目相適應的子線程,其生命周期與apscheduler3.7 的調度周期相匹配。

圖4 實時處理軟件主程序邏輯結構示意

4.2 核心調度模塊

核心調度模塊是基于Python3 開源庫apscheduler3.7實現的、具備Qt 信號-槽機制的、面向周期性任務執行的、具備并行處理能力的定時作業調度工具。在網絡拓撲狀態信息實時處理軟件結構中,核心調度模塊是實現Daemon 守護進程的基礎和關鍵,其內部結構見圖5。

從核心調度模塊的特性而言,它的內部組成在圖5 中被劃分為左右兩個部分:一部分功能(圖5右側)是對apscheduler3.7 特性的進一步擴展;另一部分(圖5 左側)則是在繼承Qt 信號-槽機制的基礎上而開發的新功能。

圖5 中核心調度模塊源于apscheduler3.7 的部分主要由作業調度器、作業觸發器、作業存儲器以及作業執行器構成。內部運行邏輯和信息流程如圖5 中箭頭所示,其中作業的概念隨作業調度器輸入參數的不同而與網絡拓撲狀態信息實時處理軟件的子進程相互對應。

圖5 核心調度模塊

圖5 中核心調度模塊源于Qtobject 的部分主要由參數加載器、調度控制器、進程跟蹤器和狀態監視器構成。其中:進程跟蹤器基于Python3.7.5 新特性@dataclass 實現;調度控制器主要實現核心調度模塊的啟動任務執行操作、停止任務執行操作、暫停任務執行操作和恢復任務執行操作;狀態監視器一方面通過對apscheduler3.7 內部運行機制的監控而獲得運行時各進程的狀態信息,另一方面通過Qt 的信號-槽機制將子進程的周期性執行結果發送至用戶GUI 界面,為軟件的實時狀態監控提供基礎支撐。

本文基于Python3.8.1 與apscheduler3.7 實現的核心調度模塊偽碼見圖6。

圖6 基于apscheduler 的核心調度模塊實現偽碼示例

4.3 資源獨立的進程模型

為提高和增強網絡拓撲狀態信息實時處理軟件的穩定性和時效性,本文設計實現如圖7 所示的資源占用完全獨立的進程模型。所謂資源獨立,一方面的含義是程序啟動時一次性解析加載所有參數至計算機內存,核心調度模塊據此為將要產生的各子進程實例分配相互獨立的輸入參數集;另一方面的含義是基于subprocess 模塊調用操作系統級別的ping 指令。兩者綜合起來看,每個底層線程所占資源是完全獨立的。

圖7 資源獨立的進行模型

資源獨立的進程模型對于軟件的核心調度模塊而言,其內部的各種操作及信息流程相當于一個黑盒設計。從資源獨立的進程模型外部觀察,調度模塊向其輸入兩類參數,即參數集與空載的跟蹤器對象。該模型實例向調度模塊輸出的也是兩類參數,即結果集與載荷跟蹤器對象。進程的執行結果裝載于各類跟蹤器。

資源獨立的進程模型內部結構如圖7 虛線框所示,由功能模塊、支撐參數以及依賴庫3 部分構成。其中,功能模塊主要包括底層并行處理子模塊、拓撲信息采集器、協議數據產生器和拓撲信息發送器4 個組成單元。底層并行處理子模塊與基于apscheduler3.7 研發的核心調度模塊共同構成網絡拓撲狀態信息實時處理軟件的多層嵌套并行處理架構,為大規模IP 地址的高效ping 測試提供支撐。

限于篇幅,本文僅給出圖7中采集傳感器-B(面向Linux 系統)的實現偽碼,見圖8 和圖9。

圖8 拓撲信息采集傳感器實現偽碼示例A 部分

圖9 拓撲信息采集傳感器實現偽碼示例B 部分

4.4 其他模塊實現

網絡拓撲狀態信息實時處理軟件還包括運行狀態實時監測模塊、拓撲信息應急處理模塊、Excel數據解析模塊、系統參數解析模塊、性能參數圖表繪制模塊[4]、組播模塊、協議數據處理模塊[5]、時間服務模塊、日志記錄模塊以及用戶GUI 界面等。上述模塊的編程實現邏輯較為簡單,皆借助各類Python3 開源庫實現。

5 軟件應用實踐

本文所述網絡拓撲狀態信息實時處理軟件作為以組播信息交互為基礎的一體化綜合業務信息管理系統的后臺服務端軟件之一,可長時間穩定可靠運行,很好地滿足了大型企業對信息基礎設施實時監控管理的實際需求。它的軟件運行狀態實時監視情況和數據發送監視情況見圖10,軟件驅動的網絡拓撲狀態頁面見圖11。

圖10 拓撲狀態信息實時處理軟件運行狀態監視界面

圖11 網絡拓撲實時驅動頁面

6 結語

文章在對大規模網絡拓撲信息可視化面臨的各類新問題及其相關技術解決途徑進行深入剖析的基礎上,提出了一種基于Python3 并行編程處理技術的網絡拓撲狀態信息實時采集發送方法,據此設計了融合快速數據處理、運行狀態實時監測、配置參數自動解析及高效應急處置等關鍵功能于一體的具有并行實時信息處理特性的軟件體系架構,結構清晰,流程合理。同時,本文對上述設計基于Python3 生態環境進行了編程實現,在大量實踐中取得了良好應用效果。實踐表明,本文所述方法穩妥可靠,可操作性強,具有良好可擴展性和技術先進性。

猜你喜歡
進程信息
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
我國高等教育改革進程與反思
教育與職業(2014年7期)2014-01-21 02:35:04
Linux僵死進程的產生與避免
男女平等進程中出現的新矛盾和新問題
俄羅斯現代化進程的阻礙
論文萊的民族獨立進程
信息
建筑創作(2001年3期)2001-08-22 18:48:14
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 国产成人一区| 激情乱人伦| 亚洲色图另类| 亚洲天堂日韩av电影| 中文字幕 91| 欧美www在线观看| 日本色综合网| 日韩美女福利视频| 老司国产精品视频91| 在线毛片免费| www.狠狠| 国产肉感大码AV无码| 欧美国产日韩在线观看| 色悠久久久| 91丝袜乱伦| 又污又黄又无遮挡网站| 国产95在线 | 亚洲欧洲日产无码AV| 亚洲永久视频| 国产中文一区二区苍井空| 国产一级毛片高清完整视频版| 欧日韩在线不卡视频| 国产欧美日韩一区二区视频在线| 日韩成人在线视频| 中文字幕有乳无码| 高清国产va日韩亚洲免费午夜电影| 欧美乱妇高清无乱码免费| 国产综合色在线视频播放线视| 国产精品欧美亚洲韩国日本不卡| 久久综合AV免费观看| 亚洲天堂自拍| 亚洲码一区二区三区| 天堂亚洲网| 欧美一级特黄aaaaaa在线看片| 亚洲视屏在线观看| 国产尹人香蕉综合在线电影 | 久热re国产手机在线观看| 九九香蕉视频| 亚洲区一区| 亚洲欧美日本国产专区一区| 美美女高清毛片视频免费观看| 激情综合五月网| 日韩高清无码免费| 国产激爽大片在线播放| 欧美区国产区| 亚洲综合片| 自拍偷拍欧美| 亚洲天堂成人| 女人爽到高潮免费视频大全| 欧美亚洲另类在线观看| 青青热久免费精品视频6| 亚洲无码熟妇人妻AV在线| 国产本道久久一区二区三区| 欧美一区二区精品久久久| 精品乱码久久久久久久| 国产一区二区三区在线精品专区| 国模视频一区二区| 亚洲IV视频免费在线光看| 国产精品99在线观看| 色婷婷丁香| 狠狠v日韩v欧美v| 亚洲男人天堂网址| 亚洲欧美国产高清va在线播放| 一区二区日韩国产精久久| 国产成人艳妇AA视频在线| 色综合久久久久8天国| 亚洲精品天堂在线观看| 中文字幕在线看| 亚洲品质国产精品无码| 亚洲美女一级毛片| 久草视频精品| 日韩美毛片| 午夜毛片免费观看视频 | 污网站免费在线观看| 57pao国产成视频免费播放| 最新无码专区超级碰碰碰| 国产区精品高清在线观看| 日本高清在线看免费观看| 美女毛片在线| 国产视频一区二区在线观看| 国产日韩精品欧美一区灰| 欧美日韩精品在线播放|