一種多協(xié)議模擬器的設(shè)計與實現(xiàn)_第1頁
一種多協(xié)議模擬器的設(shè)計與實現(xiàn)_第2頁
一種多協(xié)議模擬器的設(shè)計與實現(xiàn)_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、一種多協(xié)議模擬器的設(shè)計與實現(xiàn)        摘 要:目前,很多工具在遇到新的網(wǎng)絡(luò)協(xié)議出現(xiàn)的時候,很難將新的協(xié)議快速集成到現(xiàn)有的網(wǎng)絡(luò)工具中,從而給用戶造成很多使用上的不方便。本文設(shè)計的一種網(wǎng)絡(luò)協(xié)議模擬器PRT-GET可以很好的解決上述問題,PRT-GET按照自定義的協(xié)議工作說明書工作,它可以方便的把新協(xié)議加入到PRT-GET中,從而方便用戶使用新的網(wǎng)絡(luò)協(xié)議來完成通信工作。關(guān)鍵詞:網(wǎng)絡(luò)協(xié)議 動態(tài)鏈接庫 協(xié)議工作說明書一、引言PRT-GET定義為一個協(xié)議模擬器,所謂協(xié)議模擬器就是通過某種途徑模擬各式各樣的網(wǎng)絡(luò)通信協(xié)議從而

2、可以進行具體而實際的網(wǎng)絡(luò)通信,最終達到同時支持多種通信協(xié)議的目的。PRT-GET不同于現(xiàn)今網(wǎng)上存在的各種網(wǎng)絡(luò)工具,使用它可以編寫基本上所有的基于Socket應(yīng)用層的通信協(xié)議,PRT-GET的設(shè)計解決了用戶使用網(wǎng)絡(luò)工具時難以支持新出現(xiàn)的協(xié)議的問題。二、PRT-GET的特點作為一個優(yōu)秀的協(xié)議模擬器,PRT-GET具備以下的幾個特點:1PRT-GET是一個動態(tài)鏈接庫??紤]到應(yīng)用程序的擴展極其的不方便,所以沒有把PRT-GET設(shè)計成應(yīng)用程序的形式,而采用動態(tài)鏈接庫的方式,該方式可以方便地進行二次開發(fā),也方便擴展軟件的功能。2PRT-GET是完全面向?qū)ο蟮?。PRT-GET是一個可二次開發(fā)的動態(tài)鏈接庫,所

3、以面向?qū)ο蟮脑O(shè)計模式能令二次開發(fā)更加高效。3PRT-GET的代碼擴展性高。使用PRT-GET時,如果PRT-GET本身提供的功能不夠,那么用戶可以通過擴展PRT-GET中對應(yīng)的類,以實現(xiàn)自定義的功能。4PRT-GET支持自定義協(xié)議。PRT-GET的最大特色就是支持用戶自定義應(yīng)用層協(xié)議,通過用戶編寫的協(xié)議工作說明書,PRT-GET忠實地執(zhí)行用戶在說明書中指定的每一個操作,也就是說,用戶無需編寫任何一句代碼就可以使PRT-GET支持自定義協(xié)議。5PRT-GET的使用方便。PRT-GET使用時只需要調(diào)用動態(tài)鏈接庫就可以輕松地使用其中的協(xié)議控制類。三、PRT-GET的設(shè)計1PRT-GET的工作層次PR

4、T-GET設(shè)計為一個動態(tài)鏈接庫,它為系統(tǒng)應(yīng)用程序提供中間層服務(wù),使得應(yīng)用程序無需了解網(wǎng)絡(luò)通信的具體邏輯,只需把網(wǎng)絡(luò)的內(nèi)容當(dāng)作本地的內(nèi)容操作即可,從這點看起來PRT-GET也是一個協(xié)議,而且更是一個能提供很多協(xié)議服務(wù)的協(xié)議支持軟件。PRT-GET在網(wǎng)絡(luò)中的工作層次如圖1所示。對于使用PRT-GET作為網(wǎng)絡(luò)通信協(xié)議的應(yīng)用程序來說,用戶可以指定PRT-GET使用哪個協(xié)議進行工作,因為PRT-GET是在需要使用時才加載協(xié)議內(nèi)容的,所以用戶可以隨時動態(tài)指定PRT-GET使用的協(xié)議,甚至可以動態(tài)修改PRT-GET使用的協(xié)議內(nèi)容。當(dāng)協(xié)議組里面包含的協(xié)議不滿足用戶要求時,用戶還可以添加新的協(xié)議,這只需要添加一

5、個協(xié)議工作說明書到協(xié)議組里面就可以了。應(yīng)用程序機PRT-GET協(xié)議組協(xié)議內(nèi)容服務(wù)器服務(wù)程序用戶圖1 PRT-GET工作層次PRT-GET工作時根據(jù)用戶指定的協(xié)議加載協(xié)議工作說明書,然后再依照協(xié)議說明書內(nèi)容與遠端服務(wù)器/客戶端協(xié)作工作。對于PRT-GET來說,遠端機器是透明的,PRT-GET的機器透明性是基于工作在TCP協(xié)議上的Socket的,所以對于PRT-GET來說沒有機器的差別,沒有平臺的差別。 2PRT-GET的幾個概念在PRT-GET中,有一些基本概念貫穿于整個PRT-GET的設(shè)計和實現(xiàn)過程中。(1)協(xié)議PRT-GET中的協(xié)議對應(yīng)著一個網(wǎng)絡(luò)協(xié)議。協(xié)議在PRT-GET程序中只是一個邏輯的

6、存在,并沒有具體的某個協(xié)議的實現(xiàn),所以如果要使PRT-GET支持某個協(xié)議的話,需要編寫一個具體的協(xié)議工作說明書與PRT-GET相配合。也就是說協(xié)議工作說明書是PRT-GET的具體協(xié)議的載體,也是PRT-GET支持協(xié)議的體現(xiàn)。(2)元素元素是PRT-GET的一個新概念。所有的協(xié)議都是一些基本通信單元的組合,而PRT-GET就是通過將協(xié)議分解成一個個的基本單元從而做到支持各種協(xié)議的。這種基本單元就是元素。元素是PRT-GET中協(xié)議構(gòu)成的基本單位,一個PRT-GET的協(xié)議本質(zhì)上就是一些PRT-GET的元素序列,同樣的,對元素的不同組合可以生成不同的協(xié)議,這就是PRT-GET可以支持不同協(xié)議的本質(zhì)原因

7、。程序中的一個元素類的對象對應(yīng)著協(xié)議工作說明書的實際一行,也就是代表著通信交互中的一個基本交互單元。協(xié)議工作說明書中指定了每一個通信單元應(yīng)當(dāng)使用的元素類,并執(zhí)行相應(yīng)動作實現(xiàn)對應(yīng)的通訊單元。為更好的實現(xiàn)通訊單元的分割和減少通信協(xié)議工作說明書的編寫難度,定義了動作元素和輔助元素這兩個概念。動作元素:對應(yīng)著一個通訊基本操作,它指明了對于本次操作應(yīng)該如何進行。輔助元素:對動作單元進行輔助處理的單元,它是從屬于動作單元,一個動作元素可以有零個或多個輔助元素。動作元素和輔助元素指定了協(xié)議的一個通信單元的工作方式,而本次通信的內(nèi)容就由內(nèi)容項指定了。一個元素由動作元素和輔助元素、內(nèi)容三項組成,其結(jié)構(gòu)如下:動作單元 輔助單元* 內(nèi)容(3

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論