通信軟件設(shè)計(jì)心得體會(huì)
通信軟件設(shè)計(jì)課程總結(jié)
關(guān)于這門課程,有很多話想說,對(duì)崔老師說的話、對(duì)隊(duì)友們說的話、對(duì)自己說的話。這門課程應(yīng)該算是我上大學(xué)以來最享受的一門課程,它不僅僅讓我學(xué)到了知識(shí)、學(xué)到了技能,它更是一次寶貴的團(tuán)隊(duì)合作的項(xiàng)目經(jīng)歷,它帶給了我太多太多的東西。
首先總結(jié)一下這門課程學(xué)到的知識(shí)和技能。1.
學(xué)到了軟件工程的相關(guān)知識(shí)。對(duì)于軟件有了更清晰的認(rèn)識(shí),不只是文檔+程序+數(shù)據(jù),我通過聽老師的講課以及查閱書籍(《軟件工程概論》張海藩著),還懂了什么是軟件過程,我們的課程完成的就是瀑布模型中計(jì)劃、需求分析、和設(shè)計(jì)的過程。此外還了解了軟件工程誕生的過程,軟件危機(jī)又是怎么回事。書中還有講2.
整個(gè)軟件研發(fā)的過程中相關(guān)的管理學(xué)知識(shí),由于課程比較近,還沒有讀過。面向?qū)ο蟮木幊趟枷。這個(gè)也應(yīng)屬于軟件工程相關(guān)知識(shí),單獨(dú)提出來是因?yàn)槲覍?duì)這個(gè)有更深刻的理解。之前無論是大一的C++,大二的數(shù)據(jù)結(jié)構(gòu),大三的匯編語言,我見識(shí)到的幾乎都是面向過程思想編出來的程序,C++雖然有講,但也沒有少實(shí)踐經(jīng)歷,印象不太深刻。而這一次UML建模語言幾乎完全是針對(duì)面向?qū)ο笏枷朐O(shè)計(jì)程序的,通過建類、建對(duì)象畫時(shí)序圖、類圖等,我對(duì)面向?qū)ο?對(duì)象+繼承+消息傳遞的結(jié)論有了理解得更透徹清晰。同時(shí)組長(zhǎng)為我揭開了JAVA這種之前最熟悉而又最神秘的程序設(shè)計(jì)語言的面紗,我想抽時(shí)間自學(xué)一下Java的相關(guān)內(nèi)容,以更好地理解面向?qū)ο缶幊趟枷搿?.
UML建模語言。之前從來沒有聽說過這三個(gè)英文字母的組合。直到聽到老師的第四節(jié)課,我才恍然大悟原來我們這個(gè)課程主要是來學(xué)這個(gè)東西的。通過一學(xué)期的學(xué)習(xí),現(xiàn)在對(duì)這個(gè)有了以下認(rèn)識(shí):
(1)UML是用來幫我們進(jìn)行程序設(shè)計(jì)的,尤其是在編寫較大較復(fù)雜的項(xiàng)目(諸
如飛鴿傳書、簡(jiǎn)單的網(wǎng)頁瀏覽器、一些小的PC程序)時(shí)才更能體會(huì)出它
的方便性。
(2)UML中的各種圖中最重要的是類圖,也是和我們編寫代碼相關(guān)性最大的
一種圖。其他的圖大都是幫我們理清設(shè)計(jì)思路,從而更準(zhǔn)確地設(shè)計(jì)類圖。比如時(shí)序圖和協(xié)作圖強(qiáng)調(diào)的是各個(gè)類之間的交互關(guān)系;活動(dòng)圖是從先后步驟地角度來理清程序設(shè)計(jì)思路,它是一種面向過程的設(shè)計(jì)思路,此外活動(dòng)圖還可以用來做我們程序編寫時(shí)的流程圖,用它來繪制要比之前用
word繪制方便得多。
(3)UML語言帶給了我們一種從表層逐步深入分析程序設(shè)計(jì)的思路,也是一
種多角度看待程序的思路。從用例圖到時(shí)序圖、再到活動(dòng)圖、狀態(tài)圖、組件圖、最后到類圖,逐步求精;從時(shí)間先后、對(duì)象交互、狀態(tài)變換的
多角度看待問題。
4.Rose軟件。Rose軟件和UML是分不開的,但Rose絕不會(huì)像別的一些課程學(xué)到的軟件一樣,用完就會(huì)被刪去,因?yàn)槌擞兄谝院缶幊痰姆奖阃,它還可以幫助我思考一些復(fù)雜的問題,組織一次班會(huì)的流程等。
網(wǎng)絡(luò)編程相關(guān)知識(shí)。因?yàn)槲覀兙帉懙氖峭ㄐ跑浖,也就是涉及網(wǎng)絡(luò)的編程,為了更準(zhǔn)確地設(shè)計(jì)類圖,在組長(zhǎng)的指導(dǎo)下,我們查閱了不少網(wǎng)絡(luò)編程的相關(guān)書籍。初步地理解了網(wǎng)絡(luò)編程的機(jī)制,從最開始丈二和尚摸不到頭腦地看到socket這個(gè)東西,到開始思考文件傳輸和即時(shí)聊天采用TCP還是UDP協(xié)議實(shí)現(xiàn),再到確定采
5.用C++語言編寫windows上運(yùn)行的程序后閱讀MFC編程的相關(guān)知識(shí),到最后建立了CSocketFile和CArchive這兩個(gè)類用于文件傳輸,都是我們不斷查閱相關(guān)資料、整理更新思路的成果。尤其是我這個(gè)之前編程經(jīng)驗(yàn)很少的人看到采用MFC竟然可以如此方便地編寫程序,直接就在畫完時(shí)序圖后興奮地將兩個(gè)書上的MFC編程的小案例在機(jī)器上實(shí)現(xiàn)了一下。
我個(gè)人感覺查閱網(wǎng)絡(luò)編程知識(shí)是我在整個(gè)課程學(xué)習(xí)工程中收獲最大的部分。之前我是個(gè)遇到編程題目就很頭疼的學(xué)生,大一大二的C++,數(shù)據(jù)結(jié)構(gòu)課程沒有少copy別人的代碼,也不是自己不想編,可能是一直對(duì)編程有恐懼心理,潛意識(shí)里認(rèn)為自己編不出來,覺得編程好難,是件大牛才能做到的事情。幸好這次有我們編程經(jīng)驗(yàn)很豐富的組長(zhǎng)的督促和指導(dǎo),讓我一點(diǎn)點(diǎn)地認(rèn)識(shí)到設(shè)計(jì)、編寫程序其實(shí)并沒有那么恐怖,而且對(duì)這個(gè)過程產(chǎn)生了極大的興趣。再說一些在這門課程學(xué)習(xí)過程中收獲的一些其他的東西。
我們學(xué)到了采用SCRUM的團(tuán)隊(duì)工作方式來完成一個(gè)項(xiàng)目的方法。在學(xué)習(xí)過程中我們采用了任務(wù)分配、任務(wù)認(rèn)領(lǐng),定期會(huì)議總結(jié)討論經(jīng)驗(yàn)得失,深切體會(huì)到了SCRUM確實(shí)是一種很高效的團(tuán)隊(duì)協(xié)作模式,而且能使整個(gè)團(tuán)隊(duì)保持良好的氛圍,將成員間民主、公平的關(guān)系解決得很好,也能調(diào)動(dòng)起大家的積極性。此外我們一直保持著兩人一組操作同一臺(tái)電腦的工作方式,不但高效,而且兩個(gè)人遇到問題可以商量解決,感覺要比一個(gè)人做容易得多,而且也不易出現(xiàn)一個(gè)人把圖畫得亂七八糟,使別的隊(duì)友都看不懂的情況。
再有,在老師不斷地強(qiáng)調(diào)、和組長(zhǎng)的敦促下,我逐漸樹立起了一個(gè)以用戶為上帝的思想。以前無論是編程還是學(xué)習(xí)、寫作業(yè),我都是按照自己的想法在做事情,因?yàn)橛X得學(xué)習(xí)是我自己的事情,我覺得怎樣學(xué)好就怎么學(xué),寫作業(yè)也是這樣,從來沒有考慮過我提交的作業(yè)是要給老師看的,我應(yīng)該考慮到老師的感受。插一句題外話,感覺我們八零九零的一代年輕人做事情似乎都有這個(gè)惡習(xí),就是不知道多替別人著想。回憶起自己之前做的事情,好像只有過一次是在為別人著想的指導(dǎo)思想下做事情,就是準(zhǔn)備高考的時(shí)候,但那時(shí)我還不屑地認(rèn)為我只是為了考個(gè)好大學(xué)而應(yīng)試,是教育體制的癥結(jié)決定的,我還是崇尚按照自己的想法來做事情。
但這一次徹底地改變了我的想法,而且我確定老師您倡導(dǎo)的、我們組長(zhǎng)一直堅(jiān)持的這種理念是正確的。我們?cè)诰幊淌窃跒橛脩籼峁┓⻊?wù),只有我們的服務(wù)好,用戶才會(huì)采納我們的方案,我們才能掙到錢有飯吃。我們平常都愛去就餐環(huán)境好、服務(wù)態(tài)度好的店里吃飯,因?yàn)樽鳛橛脩舳紩?huì)更喜歡為自己著想更多的東西。所以以后無論是編寫程序、還是提交作業(yè)、還是進(jìn)行演講、組織會(huì)議,都要始終將對(duì)方的感受放在心里,這樣一來可以贏得對(duì)方的喜愛很信任,更重要的是這是對(duì)對(duì)方的一種尊重。
最后寫一些我們團(tuán)隊(duì)合作過程中的一些“花絮”。首先強(qiáng)調(diào)一下我們的組長(zhǎng)(張昕)真的很牛,無論是技術(shù)能力、管理能力、表達(dá)能力都是我遠(yuǎn)遠(yuǎn)不能及,只好膜拜的程度。每次我們遇到技術(shù)難題,都可以放心地提交給他,他或者根據(jù)自己的經(jīng)驗(yàn)、或者去查看資料、或者和老師進(jìn)行交流都可以將問題解決。此外每次開會(huì)都非常準(zhǔn)時(shí),準(zhǔn)備充分,承擔(dān)了N次寫會(huì)議記錄的工作。我在他身上看到了一個(gè)項(xiàng)目開發(fā)團(tuán)隊(duì)領(lǐng)袖所具備的品質(zhì),也感覺自己無形中學(xué)到了很多東西?傊痪湓挘瑢(duì)組長(zhǎng)很感謝很膜拜。再有老宿(宿晨曦)幾乎在每一個(gè)過程中都和我在一起工作,他的努力和細(xì)致都令我欽佩,很多我認(rèn)為不重要可以模糊處理的細(xì)小的東西,他都會(huì)很細(xì)致地辨析,力求準(zhǔn)確。此外小喬(喬雅楠)在開會(huì)的時(shí)候總可以在我們表述不清,爭(zhēng)論不清的時(shí)候一針見血地指明問題之所在,這個(gè)能力給我留下了很深刻的印象?傊覀兪莻(gè)很厲害的組長(zhǎng)帶領(lǐng)下的很努力很和諧的團(tuán)隊(duì),我很榮幸能在這個(gè)團(tuán)隊(duì)中做出了微薄的貢獻(xiàn),并學(xué)到了很多東西。
總之,這門名叫通信軟件設(shè)計(jì)的課程,就在很風(fēng)趣很博學(xué)的崔老師的講授下,很專業(yè)很善言的組長(zhǎng)的帶領(lǐng)下,很和諧很努力的團(tuán)隊(duì)共同學(xué)習(xí)中完成了。我很享受這個(gè)學(xué)習(xí)過程,要不是在其他科目瘋狂的時(shí)間瓜分壓榨下,我們還可以做得更好、學(xué)得更多一些。但通過這門課程,我樹立了對(duì)設(shè)計(jì)、編寫程序的信心,培養(yǎng)了對(duì)編程的愛好,更加堅(jiān)定了以后從事軟件方面研究、工作的想法。
擴(kuò)展閱讀:通信軟件設(shè)計(jì)總結(jié)
第一章
1、通信就是在兩個(gè)或多個(gè)實(shí)體之間傳遞或交換信息
2、通信的要素:通信實(shí)體(自然人、計(jì)算機(jī)、通信中斷等)、傳輸信道(電路、無線信道、衛(wèi)星信道、計(jì)算機(jī)網(wǎng)絡(luò)等)、交換網(wǎng)絡(luò)(PSTN、INTERNET等)、通信協(xié)議(七號(hào)信令、TCP/IP、SIP等)
3、通信的分類:1、基于連接的通信(需要在通信實(shí)體之間建立通信連路或連接,如電話、傳真等)2、基于無連接的通信(在通信實(shí)體之間不需要建立通信鏈路或連接,如短信、即時(shí)消息等)
4、通信軟件:能夠?qū)崿F(xiàn)在兩個(gè)或多個(gè)實(shí)體(計(jì)算機(jī)、電信終端、交換設(shè)備等)之間傳遞或交換信息功能的軟件稱為通信軟件5、通信軟件的特點(diǎn):1、基于通信協(xié)議或者信令系統(tǒng)2、運(yùn)行時(shí)間長(zhǎng)(電信軟件)3、基于有限狀態(tài)機(jī)4、大部分是嵌入式軟件
6、通信協(xié)議:在計(jì)算機(jī)網(wǎng)絡(luò)中,為了在兩個(gè)或多個(gè)通信實(shí)體之間準(zhǔn)確、完整地交換信息,必須對(duì)信息交換的順序和條件、交換信息的格式和內(nèi)容等做出約定,這一整套約定就稱為通信協(xié)議
7、通信軟件開發(fā)過程1、需求分析解決“做什么”問題分析用戶要求、系統(tǒng)與外界交互信息情況和軟件運(yùn)行環(huán)境等2、概要設(shè)計(jì)解決“系統(tǒng)架構(gòu)”問題設(shè)計(jì)系統(tǒng)結(jié)構(gòu)、模塊間信息交互情況以及數(shù)據(jù)結(jié)構(gòu)等3、詳細(xì)設(shè)計(jì)解決“如何做”問題描述系統(tǒng)行為、制定測(cè)試計(jì)劃等4、代碼生成解決“系統(tǒng)實(shí)現(xiàn)”問題代碼自動(dòng)生成、人工編碼、編譯調(diào)試、系統(tǒng)生成
第二章
1、協(xié)議開發(fā)過程1、開發(fā)新的協(xié)議(協(xié)議環(huán)境分析、協(xié)議功能設(shè)計(jì)、協(xié)議元素設(shè)計(jì)、形成協(xié)議文本、協(xié)議描述、協(xié)議驗(yàn)證)2、實(shí)現(xiàn)具體協(xié)議(協(xié)議分析、協(xié)議設(shè)計(jì)、協(xié)議描述、協(xié)議驗(yàn)證、協(xié)議實(shí)現(xiàn)、協(xié)議測(cè)試、協(xié)議維護(hù))3、兩者最大的區(qū)別:1、開發(fā)新的協(xié)議是從無到有,產(chǎn)生一個(gè)新的協(xié)議。成果是協(xié)議標(biāo)準(zhǔn)文本,具有可實(shí)現(xiàn)性2、實(shí)現(xiàn)具體協(xié)議時(shí)在具體應(yīng)用環(huán)境下實(shí)現(xiàn)一個(gè)協(xié)議。成果是協(xié)議軟件,具有可運(yùn)行性、可維護(hù)性的特點(diǎn)2、協(xié)議分析1、協(xié)議環(huán)境分析1、n層用戶的要求2、(n-1)層通道的性質(zhì)3、n層協(xié)議實(shí)體的工作模式2、協(xié)議功能分析1、連接控制管理2、通訊方式管理3、數(shù)據(jù)發(fā)送/接收管理4、數(shù)據(jù)安全與可靠性5、發(fā)送/接收控制6、中繼與路由選擇7、通道管理8、其他功能
3、連接管理需求(有連接服務(wù)、無連接服務(wù)、永久連接服務(wù));連接管理:建立、撤銷、復(fù)位、恢復(fù)
4、廣播與組播需求1、廣播:指一個(gè)n層用戶發(fā)出的數(shù)據(jù)報(bào),在同一個(gè)網(wǎng)絡(luò)中的其他用戶都能夠接受到2、組播:指一個(gè)或多個(gè)n層用戶發(fā)出的數(shù)據(jù)報(bào),在網(wǎng)絡(luò)中有一組用戶可以接收到該數(shù)據(jù)報(bào),授權(quán)用戶可以加入或退出該組
5、協(xié)議接口:服務(wù)原語(SAP)=服務(wù)動(dòng)作+原語類型1、服務(wù)請(qǐng)求原語:x-request:用戶協(xié)議2、服務(wù)指示原語:x-indication:協(xié)議用戶3、服務(wù)響應(yīng)原語:x-response:用戶協(xié)議4、服務(wù)證實(shí)原語:x-confirm:協(xié)議用戶6、服務(wù)證實(shí)方式類型1、用戶證實(shí)方式2、協(xié)議證實(shí)方式3、無證實(shí)方式4、三種特殊方式(查詢類服務(wù)、設(shè)置類服務(wù)、告警類服務(wù))7、通訊方式需求1、單工/半雙工/全雙工2、同步/異步8、數(shù)據(jù)需求1、數(shù)據(jù)形式(塊、流、批處理)2、數(shù)據(jù)長(zhǎng)度(定長(zhǎng)、不定長(zhǎng))9、服務(wù)質(zhì)量指標(biāo):
1、安全性:鑒權(quán)、訪問控制、保密性、完整性2、可靠性:完全性、非二義性、時(shí)間有序3、性能:吞吐率、時(shí)延、抖動(dòng)、差錯(cuò)率10、(n-1)層通道形成方式1、獨(dú)占方式:實(shí)體之間分別建立連接2、共享方式:多個(gè)協(xié)議實(shí)體共享一條連接3、無連接方式:協(xié)議實(shí)體利用下層提供的無連接服務(wù)進(jìn)行通訊11、(n-1)層通道部分指標(biāo)1、RTT(roundtriptime)2、數(shù)據(jù)的可靠性3、通道可靠性4、報(bào)文最大長(zhǎng)度5、通道工作方式
12、n層協(xié)議實(shí)體的工作模式1、點(diǎn)到點(diǎn)模式2、多點(diǎn)模式3、主從模式4、平衡模式5、中轉(zhuǎn)和路由13、連接控制管理1、連接的建立、維護(hù)及釋放的管理2、連接的合法性檢查3、密鑰交換4、QoS協(xié)商5、資源分配與回收6、連接目標(biāo)名與地址的翻譯
14、傳輸控制協(xié)議(TCP)具有連接控制管理功能;用戶數(shù)據(jù)報(bào)協(xié)議(UDP)則提供無連接的數(shù)據(jù)包傳輸15、通訊方式管理1、半雙工通訊:n層協(xié)議要進(jìn)行“發(fā)信權(quán)”管理2、全雙工通訊:n層協(xié)議要具有并發(fā)的收發(fā)功能16、數(shù)據(jù)發(fā)送/接收管理1、PDU的封裝/解封裝2、SDU分段/裝配3、SDU拼接/分離17、術(shù)語解釋:1、SDU(服務(wù)數(shù)據(jù)單元):服務(wù)原語中攜帶的用戶信息2、PDU(協(xié)議數(shù)據(jù)單元):分為數(shù)據(jù)PDU和控制PDU3、PCI(協(xié)議控制信息)18、數(shù)據(jù)安全與可靠性1、加密2、解密3、校驗(yàn)和(奇偶校驗(yàn)、累加和校驗(yàn)、CRC校驗(yàn))4、前向糾錯(cuò)(FEC)19、哈明碼*
20、發(fā)送/接收控制1、順序控制2、重發(fā)控制3、速率流控4、抖動(dòng)控制5、窗口流控21、中繼與路由選擇1、中繼網(wǎng)關(guān)(傳輸層)、路由器(網(wǎng)絡(luò)層)、網(wǎng)橋(數(shù)據(jù)鏈路層)、中繼器(物理層)2、路由選擇(靜態(tài)、動(dòng)態(tài))22、通道管理1、通道的形成2、監(jiān)視通道狀態(tài)3、處理通道故障4、共享通道控制
第三章
1、協(xié)議設(shè)計(jì)內(nèi)容(協(xié)議結(jié)構(gòu)、協(xié)議機(jī)制、協(xié)議元素、協(xié)議狀態(tài)機(jī))
2、協(xié)議結(jié)構(gòu)設(shè)計(jì):為實(shí)現(xiàn)協(xié)議功能,從總體上來考慮協(xié)議實(shí)體的結(jié)構(gòu)框架(結(jié)構(gòu)類型、結(jié)構(gòu)風(fēng)格)、功能塊組成、功能塊之間的關(guān)系
3、協(xié)議的結(jié)構(gòu)可以從三個(gè)方面考慮:分層、分階段、分類4、協(xié)議分層設(shè)計(jì)1、將協(xié)議實(shí)體分成多個(gè)子層來實(shí)現(xiàn)2、通過劃分子層可以使復(fù)雜協(xié)議的結(jié)構(gòu)變得清晰3、分層增加了子層間的通信,協(xié)議效率會(huì)受到一定影響4、協(xié)議分層的例子:局域網(wǎng)中的數(shù)據(jù)鏈路層分成鏈路控制子層(LLC)和介質(zhì)訪問控制子層(MAC)5、協(xié)議分階段設(shè)計(jì)1、協(xié)議分階段是指把協(xié)議分成多個(gè)運(yùn)行階段,每個(gè)階段只需要部分協(xié)議功能工作2、協(xié)議分階段的依據(jù)是協(xié)議的運(yùn)行過程具有明顯的階段性3、協(xié)議分階段的例子:傳輸層協(xié)議分成三個(gè)階段:建立連接階段、數(shù)據(jù)傳輸階段、釋放鏈接階段
6、協(xié)議分類設(shè)計(jì)1、協(xié)議分類指的是當(dāng)協(xié)議需要滿足不同用戶的要求或需要適應(yīng)不同的下層通道時(shí),把協(xié)議分成不同的類別,每類協(xié)議只適用于一定用戶和一定通道2、協(xié)議分類可以起到簡(jiǎn)化協(xié)議的作用7、協(xié)議機(jī)制設(shè)計(jì)1、協(xié)議機(jī)制指的是實(shí)現(xiàn)協(xié)議功能所采用的方法、策略、算法等2、設(shè)計(jì)協(xié)議機(jī)制時(shí),除了保證實(shí)現(xiàn)協(xié)議功能外,需要重點(diǎn)關(guān)注:1、協(xié)議運(yùn)行效率:是否滿足實(shí)時(shí)性要求2、資源利用率:主要指存儲(chǔ)資源的利用率,這涉及到協(xié)議的運(yùn)行效率和吞吐量3、異常處理:正確處理異常情況,才有可能保證協(xié)議的可靠運(yùn)行8、TCP協(xié)議建立連接的實(shí)現(xiàn)機(jī)制1、采用三次握手方式2、連接的雙方同時(shí)發(fā)起連接請(qǐng)求的連接建立過程9、TCP協(xié)議釋放連接的實(shí)現(xiàn)機(jī)制1、雙方分別關(guān)閉本方的輸出流2、關(guān)閉本方輸出流后仍可接收對(duì)方法來的PDU3、先釋放連接的一方收到對(duì)方最后一個(gè)PDU后,要延遲一段時(shí)間才結(jié)束,以保證確認(rèn)PDU達(dá)到對(duì)方
10、TCP協(xié)議重發(fā)控制機(jī)制(TCP采用自適應(yīng)方式確定定時(shí)長(zhǎng)度)1、測(cè)量RTT2、計(jì)算平均值3、計(jì)算變化量11、協(xié)議元素設(shè)計(jì)1、一般來說,協(xié)議有以下六種元素組成:1、服務(wù)原語和服務(wù)原語時(shí)序;2、協(xié)議數(shù)據(jù)單元(PDU)和PDU交換時(shí)序;3、協(xié)議狀態(tài);4、協(xié)議事件;5、協(xié)議變量;6、協(xié)議行為12、服務(wù)原語是協(xié)議與用戶的接口,用戶通過服務(wù)原語得到協(xié)議提供的服務(wù),協(xié)議實(shí)體功過服務(wù)原語得到服務(wù)要求和返回結(jié)果
13、服務(wù)原語有四種類型:請(qǐng)求、指示、響應(yīng)和證實(shí)14、不同的服務(wù)動(dòng)作決定了不同的服務(wù)要求15、PDU和PDU交換時(shí)序1、對(duì)等協(xié)議實(shí)體之間交換信息均以PDU為單位,PDU格式嚴(yán)格定義了信息的內(nèi)容和含義2、PDU格式設(shè)計(jì):定義每個(gè)PDU的數(shù)據(jù)結(jié)構(gòu)、字段格式和信息含義等3、PDU交換時(shí)序設(shè)計(jì)1、即規(guī)定一方收到某個(gè)PDU后應(yīng)該回送什么PDU或可以回送哪些PDU2、PDU的交換時(shí)序必須包括正常情況和各種異常情況16、協(xié)議狀態(tài)是指協(xié)議在運(yùn)行過程中等待輸入事件時(shí)所處的狀態(tài)17、協(xié)議狀態(tài)可分為:1、局部狀態(tài):只涉及單個(gè)協(xié)議實(shí)體,反映單個(gè)協(xié)議實(shí)體所處的狀態(tài)2、全局狀態(tài):參與執(zhí)行某個(gè)協(xié)議功能的所有協(xié)議實(shí)體(包括下層通道)的狀態(tài)之和18、協(xié)議狀態(tài)設(shè)計(jì)應(yīng)遵守的原則:1、當(dāng)協(xié)議實(shí)體向?qū)Ψ桨l(fā)送不同的PDU,等待對(duì)方響應(yīng)時(shí),應(yīng)設(shè)置新的狀態(tài)2、當(dāng)協(xié)議實(shí)體占用資源情況發(fā)生變化時(shí),應(yīng)設(shè)置新的狀態(tài)3、當(dāng)下層通道狀態(tài)發(fā)生變化時(shí),協(xié)議狀態(tài)也應(yīng)改變
19、協(xié)議事件是指協(xié)議的輸入或激勵(lì)。協(xié)議的輸入包括三部分:1、來自本方的服務(wù)原語;2、來自對(duì)方協(xié)議實(shí)體的PDU;3、來自內(nèi)部的定時(shí)器信號(hào)(超時(shí))20、協(xié)議事件設(shè)計(jì)就是列出所有的協(xié)議輸入事件
21、由于服務(wù)原語和PDU已經(jīng)設(shè)計(jì)好,這里只需要設(shè)計(jì)定時(shí)器及定時(shí)時(shí)長(zhǎng),定時(shí)時(shí)長(zhǎng)可以根據(jù)RTT來確定
22、協(xié)議變量是指協(xié)議中用到的各種變量都可以稱為協(xié)議變量
23、與其他軟件一樣,協(xié)議軟件中的變量也分為全局變量、局部變量和臨時(shí)變量
24、協(xié)議行為是指協(xié)議在狀態(tài)轉(zhuǎn)換(遷移)過程中執(zhí)行的操作。這些操作包括:1、輸出信息(SDU和PDU);2、設(shè)置定時(shí)器(開始計(jì)時(shí));3、復(fù)位定時(shí)器(停止計(jì)時(shí));4、修改協(xié)議變量;5、執(zhí)行一系列動(dòng)作(操作)的過程(函數(shù));6、其他操作(如讀、寫文件等)25、在有些情況下,協(xié)議過程中一些協(xié)議動(dòng)作的執(zhí)行是有條件的,描述這些約束條件的語句稱為謂詞。謂詞一般用布爾表達(dá)式來表示26、協(xié)議狀態(tài)機(jī)1、描述協(xié)議狀態(tài)的遷移情況2、反映協(xié)議元素之間的關(guān)系:在什么協(xié)議狀態(tài)下,什么輸入事件驅(qū)動(dòng)什么協(xié)議過程,協(xié)議過程在什么條件下執(zhí)行什么協(xié)議動(dòng)作,協(xié)議狀態(tài)如何改變等3、事件狀態(tài)表4、有限狀態(tài)機(jī)
27、協(xié)議事件狀態(tài)表舉例1、TCP協(xié)議事件狀態(tài)表2、TCP協(xié)議輸入事件表3、TCP協(xié)議輸出事件表28、有限狀態(tài)自動(dòng)機(jī)S:系統(tǒng)狀態(tài)集,狀態(tài)數(shù)有限I:系統(tǒng)初始狀態(tài),i∈SE:輸入字母集
T:轉(zhuǎn)移函數(shù)集,是從SxE到S的映射29、擴(kuò)展有限狀態(tài)自動(dòng)機(jī)S:系統(tǒng)狀態(tài)集,狀態(tài)數(shù)有限I:系統(tǒng)初始狀態(tài),i∈SE:輸入事件集
T:轉(zhuǎn)移函數(shù)集,是從SxE到S的映射
30、擴(kuò)展有限狀態(tài)自動(dòng)機(jī)舉例:TCP協(xié)議的有限狀態(tài)機(jī)
第四章
第六章1、SDL(specificationanddescriptionlanguage)是ITU-T提出的一種形式化描述語言,由ITU_TZ.100建議定義
2、SDL的應(yīng)用領(lǐng)域是實(shí)時(shí)系統(tǒng)3、SDL基于的數(shù)學(xué)模型1、系統(tǒng)行為:環(huán)境←信號(hào)→SDL系統(tǒng)系統(tǒng)、環(huán)境、交互、信號(hào)
4、系統(tǒng)的行為可通過可通信的擴(kuò)展有限狀態(tài)自動(dòng)機(jī)來描述:1、系統(tǒng)由擴(kuò)展的有限狀態(tài)自動(dòng)機(jī)組成2、擴(kuò)展的有限狀態(tài)自動(dòng)機(jī)具有與外界通信的能力:輸入/輸出動(dòng)作5、SDL中的基本概念:SDL系統(tǒng)結(jié)構(gòu)、SDL文法概述6、SDL的基本語法:1、包(package):包中定義的內(nèi)容是可重用的,SDL201*允許各種圖都可引用包。包定義還可以引用另一個(gè)包2、系統(tǒng)(system):
1、SDL系統(tǒng):完整地描述一個(gè)真實(shí)系統(tǒng)或一個(gè)真實(shí)系統(tǒng)中的相對(duì)獨(dú)立的一部分。2、一個(gè)系統(tǒng)可以劃分為若干個(gè)功能塊;功能塊之間以及功能塊之間用信道連接3、系統(tǒng)各功能塊之間以及功能塊與環(huán)境之間可以使用信號(hào)通道;信號(hào)通過信道來傳遞3、信號(hào)定義1、信號(hào)是SDL系統(tǒng)中進(jìn)程之間通信的基本單位2、信號(hào)必須在信道中傳輸3、要利用信號(hào)來通信,必須:1、信號(hào)定義:在相關(guān)代理圖的文本域中定義信號(hào)2、信號(hào)與信道關(guān)聯(lián):在信道的信號(hào)列表域中列出信號(hào),說明信號(hào)可以在哪些信道中傳遞4、信號(hào)可以定義參數(shù),定義過的信號(hào)可以用來定義信號(hào)列表。信號(hào)列表的定義也放在文本符中5、在信道上列出信號(hào)和/或信號(hào)列表時(shí),信號(hào)列表標(biāo)識(shí)符要用圓括號(hào)括起來,以區(qū)別于信號(hào)4、信道定義1、信道是用在代理與代理之間或代理與系統(tǒng)環(huán)境或信關(guān)之間傳遞信號(hào)的通道2、信道分為單向和雙向兩種,在每個(gè)方向上序列出在該方向上傳遞的所有信號(hào),這些信號(hào)用方括號(hào)括起來,標(biāo)在信道的箭頭處。3、信道分為:1、延遲信道:表示信號(hào)從源端到目的端要經(jīng)過一定延遲,延遲時(shí)間是不確定的,但信道上的信號(hào)仍是有序的2、非延遲信道:表示信號(hào)從源端發(fā)出后直接到達(dá)目的地,沒有延遲5、功能塊1、功能塊可以再分成多個(gè)功能塊,也可以由一個(gè)或多個(gè)并發(fā)進(jìn)程組成2、功能塊的交互域描述文本功能塊中功能塊或進(jìn)程的組成及交互關(guān)系3、在功能塊圖的邊界上,要標(biāo)出與本功能塊相連的信道標(biāo)識(shí)4、功能塊文本域定義本功能塊內(nèi)部信號(hào)、信號(hào)列表、數(shù)據(jù)類型等內(nèi)容6、進(jìn)程1、進(jìn)程是系統(tǒng)的基本組成單位,系統(tǒng)的行為主要由進(jìn)程來描述2、在進(jìn)程圖中,系統(tǒng)行為用狀態(tài)機(jī)圖來描述3、在系統(tǒng)中,進(jìn)程是以進(jìn)程實(shí)例的形式出現(xiàn),每個(gè)進(jìn)程實(shí)例都有一塊私有存儲(chǔ)空間,記錄進(jìn)程實(shí)例各變量的值及實(shí)例所處的狀態(tài)等4、進(jìn)程實(shí)例一旦被創(chuàng)建,就擁有了一個(gè)惟一的進(jìn)程標(biāo)識(shí),稱為pid(processidentifier)。通過以下四種pid表示式可以得到進(jìn)程實(shí)例的pid:1、self返回本進(jìn)程實(shí)例的pid2、sender返回發(fā)送最近被消耗信號(hào)的進(jìn)程實(shí)例的pid3、parent返回創(chuàng)建本進(jìn)程實(shí)例的進(jìn)程實(shí)例(父進(jìn)程)的pid4、offspring返回最近被本進(jìn)程創(chuàng)建的進(jìn)程實(shí)例(子進(jìn)程)的pid7、狀態(tài)機(jī)可以包含:開始域、狀態(tài)域、輸入域、輸出域、任務(wù)域、創(chuàng)建域、過程調(diào)用域、分支域、定時(shí)器操作等
友情提示:本文中關(guān)于《通信軟件設(shè)計(jì)心得體會(huì)》給出的范例僅供您參考拓展思維使用,通信軟件設(shè)計(jì)心得體會(huì):該篇文章建議您自主創(chuàng)作。
來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請(qǐng)聯(lián)系我們及時(shí)刪除。