對于OMNEST 的以太網傳輸丟包問題研究論文
0 引言
在通信系統建立以及調試過程中,仿真建模實驗作為一種重要的支撐技術發揮著越來越重要的作用。相對于實物調試試驗,使用仿真技術能夠更快、更多的遍歷問題出現的條件,為解決問題提供方案,提高工作效率。OMNEST是一款面向對象的離散事件網絡模擬器,它的特征體現在分層次嵌入式模塊、各模塊以模塊類型分類、模塊之間通過信號在通道上的傳輸進行通信、靈活的模塊參數和拓撲描述語言。一個可執行仿真程序一般由網絡描述語言NED、.h 和.cc 文件、配置文件INI及消息文件.msg組成,其中:網絡描述語言NED,描述網絡拓撲結構;.h 和.cc 文件,用于完成各模塊的代碼編寫、也可以通過代碼生成網絡的拓撲結構,以及實現仿真結果的統計工作;配置文件INI,主要實現對模塊參數的配置,便于對仿真參數的更改;消息文件.msg,可以模擬傳輸過程中的事件、消息、包、幀等。本文使用OMNEST離散事件仿真工具對以太網進行建模,建立以太網節點模型及其中心節點內各分功能模塊模型,多個節點模型通過NED 語言聯合組成最終的網絡模型。節點模型由應用層模塊APP、傳輸層模塊UDP、網絡層模塊NETWORK(包含IP、ICMP、IGMP等子模塊)、鏈路層模塊ETH(包含ARP、ENCAP、MAC 等模塊)組成。
1 以太網傳輸丟包問題分析
在進行某綜合試驗的過程中,使用千兆以太網通過交換機將主機與終端相連。在實際網絡傳輸過程中,由主機產生消息通過接入設備路由將消息分別傳輸給所有的終端。對系統進行調試中,主機上的綜合監控軟件在向終端上的監控信息模擬軟件發送數據的過程中出現丟包現象。經分析,對出現問題的原因建立故障樹,如圖1所示。通過對故障進行排查,排除了硬件和應用軟件的問題。在主機和終端上分別安裝CommView抓包軟件,通過多次試驗,查看抓到的數據包發現出錯的現象相同,故障可復現。每次出錯時,數據包信息描述如下:
(1)ARP request方向為:本機→對端;
(2)IP分片方向為:本機→對端;
(3)ARP respond 方向為:本機←對端。
查看抓到的數據包內容:ARP Request方向數據包中源IP為本機IP,源MAC為本機MAC,目的IP 為對端IP,目的MAC 為全“1”,意為廣播,這種形式的ARP 包是在一臺主機的ARP 列表中不含有可用項時發出的標準的ARP請求數據包;IP分片方向通過查看數據包的大小、偏移量和MF標志位,證實它是數據包中一包數據所分成的IP片中的最后一片(每包數據大小為8 960 B,被分成7個IP片);ARP Respond方向數據包中的內容顯示它是一個標準的ARP應答包。通過抓包分析猜測問題出現在ARP解析過程中,當發送方主機ARPCache清空或者目的地址超時導致MAC目的地址不可用,就會發起ARP查詢時,故障出現。在故障樹中對應于操作系統引起的故障。在連續試驗過程中,由于故障每隔10 min會出現一次,因此,分析認為是系統定期ARP查詢導致故障的出現。
2 仿真模型的建立
本文使用OMNEST 進行仿真,實現由1 臺主機向6 臺終端通過路由器發送報文,對故障進行編碼設計具有ARPCache 清空功能的ARP 協議,通過參數設定,與標準以太網模塊進行比較定位問題。為使用OMNEST搭建的仿真場景。通過對抓包結果進行分析,定位問題可能出現在ARP解析過程中。在每一次ARP解析時都會出現丟包現象,而且總是丟掉IP 分片的前面6 片,而發送最后一個分片。
基于以上分析,本文建立節點模型,使用計算機體系結構5層協議來模擬發送數據端。應用層為myapp,實現消息的產生,接收以及統計;傳輸層使用UDP協議,綁定端口號1 024;網絡層建立IP?ICMP?IGMP 結構模型,實現IP 分片以及差錯控制等功能;數據鏈路層建立myarp?encap?MAC 結構模型,myarp 模塊實現地址的ARP 解析模型,以及復現上述所定位的問題的編程實現,encap模塊實現仿真中上下層報文的發送控制,MAC 模塊實現MAC 地址的分配;最后通過1 000 MHz以太網發送。在消息的產生以及傳輸等方面,通過上述方法建立的節點模型都與實際情況一致。
參考計算機網絡ARP 標準并結合實驗的實際情況,本文設計具有ARPCache清空功能的ARP協議,在協議中中采用ARP高速緩存存放局域網上各主機和路由器的IP地址到硬件的映射表。本文中規定ARPCache 清空時間為t1,而對于每一個目的地址,在協議中有一個生存時間為t2,在t2時間內使用過該目的地址則再延長一個生存時間,如果超過這個生存時間就會把這一地址映射丟棄。
3 仿真結果及分析
OMNEST系統自帶有ARP模塊,此模塊按照計算機網絡ARP標準建立。標準ARP模塊無法準確描述實驗出現的問題,所以本文建立具有ARPCache清空功能的以太網模型。仿真實驗時,將具有ARPCache清空功能的以太網模型與標準的以太網模型進行對比。分別對故障樹羅列情況進行仿真,得到仿真結果,并對仿真結果進行對比分析。
4 結語
本文使用OMNEST通信仿真軟件對以太網主機之間通信進行建模,對每個節點采用計算機網絡體系5層結構進行精確仿真,使用C++編程實現每一個功能模塊,使模型與真實模型逼近。針對以太網丟包問題,本文先建立故障樹對故障進行理論分析,然后使用OMNEST 建立具有ARPCache清空功能的節點模型,復現丟包現象,精確定位問題,并結合仿真結果提出問題的解決方案。隨著通信仿真技術的發展,通信仿真手段越來越多的被用來解決工程問題。本文使用OMNEST對以太網丟包問題的描述和解決為后續同類工程問題的解決提供借鑒。
【對于OMNEST 的以太網傳輸丟包問題研究論文】相關文章:
企業債務重組問題的研究論文01-12
企業納稅籌劃問題的研究論文02-21
林業種植問題策略研究論文02-27
有線電視信號傳輸中的干擾問題論文02-19
現代企業成本管理問題研究論文12-13
頂崗生班級管理問題研究論文11-18
關于企業債務重組問題的研究論文01-12
教育問題研究論文提綱范文03-27
散居孤兒救助問題研究論文提綱11-21
綠色建筑施工管理問題研究論文12-17
- 相關推薦