<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > ARP協(xié)議動態(tài)交互仿真系統(tǒng)的設(shè)計

          ARP協(xié)議動態(tài)交互仿真系統(tǒng)的設(shè)計

          作者: 時間:2011-03-25 來源:網(wǎng)絡(luò) 收藏

          仿真實驗教學是幫助學生理解網(wǎng)絡(luò)的重要手段。目前的仿真實驗是離散的、靜態(tài)的,即單獨模擬某個協(xié)議,不能與其它協(xié)議合作,且協(xié)議中的數(shù)據(jù)表示是靜態(tài)的,不能隨著輸入的數(shù)據(jù)的變化而變化,實驗效果單調(diào)、生硬。具有代表性的網(wǎng)絡(luò)仿真軟件有:國外的NS2,BosON Netsim,國內(nèi)的 “網(wǎng)絡(luò)協(xié)議仿真教學系統(tǒng)”,“Psender”系統(tǒng)等。NS2 能夠演示協(xié)議的工作過程,但是,無數(shù)據(jù)內(nèi)容的變化和協(xié)議之間的合作。Boson Netsim 主要用于仿真網(wǎng)絡(luò)工程實驗,幫助學生熟悉網(wǎng)絡(luò)設(shè)備和協(xié)議的使用,不能演示協(xié)議的工作流程,以及協(xié)議之間的相互協(xié)作過程,其效果僅類似于一個實際的網(wǎng)絡(luò)工程實驗。“網(wǎng)絡(luò)協(xié)議仿真教學系統(tǒng)”實現(xiàn)了跨機器之間通信,但是數(shù)據(jù)的傳遞全部由人工操作,實驗環(huán)境復雜,為了更好地模擬協(xié)議,忽略了實驗環(huán)境與實際應(yīng)用場景的一致性。“Psender”系統(tǒng)借用了著作《計算機網(wǎng)絡(luò):自頂向下方法與Internet 特色》作者提供的一些在線實驗案例,實現(xiàn)了數(shù)據(jù)發(fā)送方和接收方之間的自動通信和速度匹配,但是,忽略了數(shù)據(jù)通信的中間過程,如,不能演示交換機的工作流程,也是離散的。因此,已有的仿真實驗是離散的、靜態(tài)的。而網(wǎng)絡(luò)通信是一個連續(xù)的過程,需要協(xié)議之間相互協(xié)作,且數(shù)據(jù)也需要變化。

          本文引用地址:http://www.ex-cimer.com/article/191284.htm

             協(xié)議功能是把IP 地址映射為MAC 地址,核心機制是 緩存表,實現(xiàn)IP 地址和MAC 地址之間的一一對應(yīng)關(guān)系。研究 協(xié)議動態(tài)交互仿真實驗系統(tǒng)的目的是便于大家在學習ARP 協(xié)議的時候更好地理解協(xié)議理論,能夠體會到ARP 請求報文和響應(yīng)報文封裝和發(fā)送的整個過程,真實地演示交換機對于ARP 請求報文和響應(yīng)報文轉(zhuǎn)發(fā)的機制及PC 機上緩存表的修改過程,有助于增強學生的學習效果。

            1 系統(tǒng)設(shè)計

            ARP 協(xié)議動態(tài)交互仿真實驗系統(tǒng)是由三臺計算機(PC-A,PC-B,PC-C)模擬的局域網(wǎng),數(shù)據(jù)在其內(nèi)部轉(zhuǎn)發(fā)時的分布式仿真實驗平臺。三臺機器分別模擬ARP 報文發(fā)送端、交換機、ARP 報文接收端,通過三臺機器交互操作,在以太網(wǎng)環(huán)境中動態(tài)模擬出ARP 協(xié)議的整個工作流程,包括ARP 高速緩存表的查詢和修改,ARP 報文封裝,交換機端口轉(zhuǎn)發(fā)報文。

            ARP 協(xié)議動態(tài)交互拓撲結(jié)構(gòu)圖如圖1 所示。

          ARP 協(xié)議動態(tài)交互仿真實驗平臺拓撲結(jié)構(gòu)

          圖1 ARP 協(xié)議動態(tài)交互仿真實驗平臺拓撲結(jié)構(gòu)

            1.1 系統(tǒng)分析

            該系統(tǒng)的目的是為了在學生學習ARP 協(xié)議時,通過動態(tài)、逼真的實驗過程幫助學生深入理解ARP 協(xié)議,提高學習效果。為了能夠快捷、順利地完成實驗,實驗環(huán)境對該系統(tǒng)有如下要求:部署方便,使用簡單,效果逼真,移植性和可擴展性強。

            系統(tǒng)針對上述需求采取如下策略:該系統(tǒng)全部在Windows XP 下開發(fā),采用部署較為簡單的Mysql 數(shù)據(jù)庫和Tomcat 服務(wù)器(PC-C),將整個ARP 協(xié)議工作過程抽象出來放在網(wǎng)頁上直觀地展現(xiàn),學習者可以像瀏覽網(wǎng)頁一樣使用該系統(tǒng)。

            客戶端:要求簡單、明了地展現(xiàn)相應(yīng)信息;有動態(tài)效果,逐步封裝;能與服務(wù)器進行數(shù)據(jù)交互。因此,系統(tǒng)用dreamweaver8 設(shè)計頁面,采用表格布局封裝相關(guān)信息;用javascript. 控制動態(tài)效果和實現(xiàn)逐步封裝;采用Ajax 技術(shù)實現(xiàn)客戶端與服務(wù)器的交互。

            服務(wù)器:開發(fā)語言相對簡單易學,業(yè)務(wù)邏輯集中控制,采用分層的思想,在基本不動現(xiàn)有代碼的情況下實現(xiàn)功能的拓展。系統(tǒng)用java 完成服務(wù)器端的實現(xiàn),以一個邏輯控制類控制整個業(yè)務(wù)邏輯;封裝一個持久層框架byesql 操作mysql數(shù)據(jù)庫,能在不寫任何SQL 語句的情況下針對MySQL 數(shù)據(jù)庫完成基本的增、刪、改、查。

            1.2 系統(tǒng)設(shè)計

            1.2.1 系統(tǒng)用例圖

            實驗時,學生甲操作PC-A,模擬數(shù)據(jù)發(fā)送端;學生乙操作PC-C,模擬交換機;學生丙操作PC-B,模擬數(shù)據(jù)接收端。

            發(fā)送端(PC-A):獲取本機真實IP 和MAC 地址后,用一個JSP 頁面模擬ARP 報文的逐步封裝過程,使用者可以看到ARP 請求報文逐步封裝的效果。然后自動向“交換機”

            發(fā)送ARP 請求報文,再自動跳轉(zhuǎn)到“ARP 高速緩存表”模擬頁面,等待“交換機”轉(zhuǎn)發(fā)來ARP 響應(yīng)報文,最后修改“ARP 高速緩存表”。

            交換機(PC-C):用一個JSP 頁面模擬“端口——MAC映射表”,負責轉(zhuǎn)發(fā)ARP 報文。初始為等待狀態(tài),當發(fā)送端(PC-A)發(fā)送完ARP 請求報文之后,自動向除發(fā)送端外的所有端口轉(zhuǎn)發(fā)該請求報文,完畢后自動跳到初始狀態(tài)等待轉(zhuǎn)發(fā)ARP 響應(yīng)報文,當響應(yīng)報文到達后就針對發(fā)送端(PC-A)單播該報文分組。

            接收端(PC-B):獲取本機真實IP 和MAC 地址后,自動跳到“ARP 高速緩存表”模擬頁面,等待“交換機”將ARP請求報文轉(zhuǎn)發(fā)過來后修改ARP 高速緩存表,再自己跳轉(zhuǎn)到ARP 響應(yīng)報文頁面,逐步封裝。封裝完畢則自動向“交換機”發(fā)送ARP 響應(yīng)報文。

            圖2 為ARP 協(xié)議動態(tài)交互用例圖。

          ARP 協(xié)議動態(tài)交互仿真系統(tǒng)用例

          圖2 ARP 協(xié)議動態(tài)交互用例


          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();