![網絡協議分析與設計全套教學課件_第1頁](http://file4.renrendoc.com/view12/M06/07/0B/wKhkGWYLi-yAAQFdAAKwxOqI_h4871.jpg)
![網絡協議分析與設計全套教學課件_第2頁](http://file4.renrendoc.com/view12/M06/07/0B/wKhkGWYLi-yAAQFdAAKwxOqI_h48712.jpg)
![網絡協議分析與設計全套教學課件_第3頁](http://file4.renrendoc.com/view12/M06/07/0B/wKhkGWYLi-yAAQFdAAKwxOqI_h48713.jpg)
![網絡協議分析與設計全套教學課件_第4頁](http://file4.renrendoc.com/view12/M06/07/0B/wKhkGWYLi-yAAQFdAAKwxOqI_h48714.jpg)
![網絡協議分析與設計全套教學課件_第5頁](http://file4.renrendoc.com/view12/M06/07/0B/wKhkGWYLi-yAAQFdAAKwxOqI_h48715.jpg)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1章概述第1章-概述第2章-協議設計1第2章-協議設計2第3章-協議形式化描述技術(1-概述及FSM)第3章-協議形式化描述技術(2-PetriNet)第4章-協議形式描述語言(1-SDL)第5章-協議驗證技術第6章-協議驗證工具全套可編輯PPT課件2內容提要課程概述1協議2協議工程33課程名稱網絡協議分析與設計/協議分析與設計網絡協議工程網絡:三網(計算機網絡、電信網絡、CATV),分布式系統(tǒng)/操作系統(tǒng)協議:規(guī)定通信實體交換數據的格式以及有關的同步問題。工程:用工程化的方法來開發(fā)協議4課程目標為什么開這門課?研討目標:協議開發(fā)中常見的設計技術、形式化描述技術和協議工程學的基本理論立足點:基于最基本的理論,結合最先進的技術,理解最本質的知識。本課程包括:閱讀資料、課堂教學、課堂討論、習題、上機實驗、線上等環(huán)節(jié)。與協議有關的課程比較多,如:計算機網絡、數據通信、分布式系統(tǒng)等。這些課程往往描述的是一些被廣泛接受并被一些國際標準化組織標準化了的協議。它們并不解釋:協議的設計過程、協議為什么正確工作、協議是不是有缺陷。而這些正是本課程要解決的問題。5課程目標(續(xù))內容要求:對協議工程學有一個基本認識重點掌握協議設計技術、形式化描述技術(FSM,SDL)、協議驗證技術了解一致性測試技術希望通過本課程的學習,不僅掌握所涉及的協議開發(fā)知識,而且鍛煉一些基本的科研技能。獨立解決具體科研問題的能力科研表達與溝通的能力面對一個并不熟悉的科研領域,可以做到獨立查閱資料、確定具體的研究目標、制定實施計劃、最終完成一個相對獨立的研究。
將已經掌握的科研內容,用精練的語言(口頭、書面)表達出來,通過與其他人討論,更深入地掌握此方面知識。6授課內容概述(第一章)協議設計(第二章)形式化描述技術(FSM,PetriNet,SDL,LOTOS,ESTELLE)(第三、四章)協議驗證(第五、六章)協議一致性測試(第七章)7國內相關課程北京郵電大學:協議工程與通信軟件協議工程的概念協議模型協議形式化描述技術協議驗證技術協議實現和測試技術MSC和SDL語言簡介通信軟件設計方法與實踐清華大學:計算機網絡中的形式化方法和協議工程學主要內容:形式化描述方法、一致性測試技術8國內相關課程(Cont.)中國科技大學軟件學院:《通信系統(tǒng)軟件開發(fā)》東南大學,河海大學研究生課程:《計算機網絡協議工程》解放軍理工大學,華中科技大學,南京郵電學院,云南大學,浙江理工大學等也開設了類似課程9國外相關課程一些國外的大學開設類似課程UniversityofFreiburg:NetworkProtocolDesignandEvaluation
rmatik.uni-freiburg.de/teaching/lecture/protocol-design-s09/slides.htmlLUT(LappeenrantaUniversityofTechnology):CommunicationsSoftwareandArchitecture
http://www2.it.lut.fi/kurssit/02-03/010607000/lectures.htmlUniversityofTwente:ProtocolEngineeringConcordiaUniversity:ProtocolDesignandValidationTelkomUniversity,SchoolofEngineering:ProtocolEngineering10先修課程計算機網絡或數據通信操作系統(tǒng)分布式系統(tǒng)11參考書目吳禮發(fā),《網絡協議工程》,2011.4,電子工業(yè)出版社。HartmutKonig,ProtocolEngineering,2012,SpringerGerardJ.Holzmann,DesignandValidationofComputerProtocols,PrenticeHallAthttp://www.cs.rug.nl/~grl/ar05/spinbook/Book91.html古天龍,蔡國永,《網絡協議的形式化分析與設計》,電子工業(yè)出版社,2003.6龔正虎,《計算機網絡協議工程》,國防科技大學出版社,1993.12R.Lai,A.Jirachiefpattana,
CommunicationProtocolSpecificationandVerification,KluwerAcademicPublishers,1998
1213課時安排課堂:20學時,每周2學時根據需要,可安排部分課時自習,自習時間主要用來完成作業(yè)和閱讀文獻。線上:8學時上機:8學時待定14成績評定課堂成績(80%)
考試(70%):閉卷考勤和作業(yè)(10%):檢查完成作業(yè)的質量,對知識的理解程度。實驗及課程報告(20%):實驗(SPIN),設計、描述、驗證協議,撰寫課程報告。課外作業(yè)(20%):檢查完成作業(yè)的質量,對知識的理解程度。實驗及課程報告(80%):實驗(SPIN):設計、描述、驗證協議,撰寫課程報告。15內容提要課程概述1協議2協議工程316網絡協議定義計算機網絡不可缺少的組成部分為網絡中互相通信的對等實體間進行數據交換而建立的規(guī)則、標準或約定,保證實體在計算機網絡中有序地交換數據。實體(Entity)是指任何可以發(fā)送或接收信息的硬件或軟件進程,在大多數情況下,就是一個特定的軟件進程。位于不同系統(tǒng)的同一層次內交互的實體,就構成了對等實體。17協議定義(Cont.)英格蘭國家物理實驗室NPL(NationalPhysicalLaboratory)的R.A.Scantlebury和K.A.Bartlett在一份備忘錄(AprotocolforuseintheNPLdatacommunicationsnetwork)中最早將“協議(protocol)”一詞用于描述數據通信過程。NPL設計了計算機互聯系統(tǒng),證明了數據包交換思想可行性“協議是關于分布式系統(tǒng)進行信息交換時的一種約定,協議應按照語言的方式進行定義?!被谒麄兊挠^點:網絡協議就是具有規(guī)定文法、語法和語義的語言,其中,文法給出了有效信息的精確格式,語法描述了數據交換的規(guī)則,語義規(guī)定了可交換信息的詞匯及其含義。18協議定義(Cont.)協議三要素(從語言的角度來理解協議):語法語義同步
19協議定義:語法在語言學中,語法即是語言的結構方法和構成規(guī)則,語言組成成分(詞、句等)之間以什么樣的規(guī)則結合而構成語句或語言。網絡協議中的語法?網絡協議中的語法體現為數據報文中的控制信息(通常在報文的首部)和各種控制報文的結構、格式,即規(guī)定報文的長度,報文中劃分多少個域(Field),每個域的名稱、數據類型、長度等。其中,報文中各個域的類型、長度及相互間的位置、順序關系則構成了詞法。TCP報文20IP報文2122協議定義:語義網絡協議的語義可以理解為協議數據報文中的控制信息和控制報文所約定的含義,即需要完成何種動作,發(fā)出何種控制信息以及做出何種響應。例如:IP報文首部控制信息中的目的地址域指明了報文的目的地,接收到此報文的網絡節(jié)點均將依據該域進行路由選擇,因而,規(guī)定在首部控制信息中的給定域給出目的節(jié)點地址就是一種語義。
23協議定義:語義(Cont.)例如(續(xù)):為實現有連接的傳輸服務,設計一套連接建立的控制報文。發(fā)起方構造一個“請求連接”的協議控制報文,“請求連接”就是該控制報文的語義。接收方收到這個控制報文后,根據已知的格式,分析規(guī)定域中的報文類型碼,就可了解這個“請求連接”的語義,從而作出“允許連接”或“拒絕連接”的響應?!霸试S連接”報文和“拒絕連接”報文的語義也是協議約定好的,通信雙方通過按一定時序關系交換這些約定語義的控制報文,即可實現建立連接的功能和提供有連接服務。在協議中,常使用的“數據收到確認”報文(ACK報文)、“出錯通知”報文、“緊急通知”報文等,均是具有特定語義的協議報文,即協議的組成部分。24協議定義:同步簡單地說,同步是指事件發(fā)生順序的詳細說明。具體來說,同步是指通信過程中各種控制報文傳送的順序關系,例如“允許連接”或“拒絕連接”報文必須是作為請求連接報文的一種響應來發(fā)送,“拆除連接”報文也必須在建立連接后的某種條件下發(fā)送,等等。這種控制報文發(fā)送的時序關系,也決定了通信雙方所處的通信狀態(tài)(發(fā)送狀態(tài)、接收狀態(tài)、等待狀態(tài)等),所以常用建立通信雙方的有限狀態(tài)機的方法來描述網絡協議。在有些文獻中,也將這種同步關系視為協議語法的一部分。
SYN-SENTESTAB-LISHEDSYN-RCVDLISTENESTAB-LISHED
用三次握手建立TCP連接的各狀態(tài)
SYN=1,seq=xACK=1,seq=x+1,ack=y
1CLOSEDCLOSED數據傳送主動打開被動打開AB客戶服務器SYN=1,ACK=1,seq=y,ack=x
1TCP的連接建立26協議定義:進一步延伸進一步延伸為計算機通信協議。
協議是計算機網絡和分布式系統(tǒng)中各種通信實體或進程間相互交換信息時必須遵守的一組規(guī)則或約定。網絡協議工程中的許多技術和方法均可應用到分布式系統(tǒng)中的進程間通信協議的設計過程中。
27網絡體系結構大量的研制經驗表明,對于非常復雜的計算機網絡協議,應采用層次式結構。在計算機網絡中,將計算機網絡的各層及其協議的集合,稱為網絡的體系結構(architecture)。ISO的OSI/RM(開放系統(tǒng)互連/參考模型)IBM的SNA(系統(tǒng)網絡體系結構)DEC的DNA(分布式網絡體系結構)IETF的TCP/IP28協議標準化Whatarestandards?Standardsaredocumentedagreementscontainingtechnicalspecificationstobeusedconsistentlyasrules,guidelines,ordefinitionsofcharacteristics,toensurethatmaterials,products,processesandservicesarefitfortheirpurpose,contributetomakinglifesimpler,andtoincreasingthereliabilityandeffectivenessofthegoodsandservicesweuseInternationalStandardsNationalStandardsIndustry-widestandardizationisaconditionexistingwithinaparticularindustrialsectorwhenthelargemajorityofproductsorservicesconformtothesamestandards(某個行業(yè)范圍內統(tǒng)一的標準)29協議標準化(Cont.)WhyPushForStandardization?Theaimistofacilitatetrade,exchangeandtechnologytransferthroughEnhancedproductqualityandreliabilityatareasonableprice.Greatercompatibilityandinteroperabilityofgoodsandservices.Simplificationforimprovedusability.Increaseddistribution(發(fā)布)efficiency,andeaseofmaintenanceWithoutStandardization,NsourcesandMdestinationsforinstance,leadstoN*Mprotocolsand2*N*Mimplementations…協議標準化(Cont.)31協議標準化(Cont.)Whatdoesastandardlooklike?-ISOexplainsthemajorcomponentsoftheirstandardsdocuments:Itcanbeanythingfromafourdocumenttoa1000tome(大部頭,巨著),includingtwicetheweightofthestandarditselfininformativeannexes.Itmayspecifythetasksthatacertainrangeofequipmentmustbeabletoperform,ordescribeindetailanapparatusanditssafetyfeatures(規(guī)定一類設備必須能夠執(zhí)行的任務或者詳細描述一個裝置和它的安全特征)32協議標準化(Cont.)Whatmakesupastandard?Itmaycontain:SymbolsDefinitionsDiagramsCodesTestmethods33協議標準化(Cont.)協議標準化組織InternationalOrganizationforStandardization(ISO)國際電報電話咨詢委員會
(CCITT)InternationalTelecommunicationsUnion(ITU-T)InternationalFederationforInformationProcessing(IFIP)InternetEngineeringTaskForce(IETF)WorldWideWebConsortium(W3C聯盟)AsynchronousTransferModeForum(ATMForum)AmericanNationalStandardsInstitute(ANSI)InstituteofElectricalandElectronicsEngineers(IEEE)AssociationforComputingMachinery(ACM)34ISO是一個涉及范圍很廣的國際標準開發(fā)機構,包括很多政府的或民間的標準研究機構,如美國的國家標準研究所ANSI。成立于1947年。ISO下屬多個技術委員會TC(TechnicalCommittees),TC又由多個分委員會SC(Subcommittees)組成。每個SC下有多個工作組WG(WorkingGroups)。例如,TC97主要負責與計算機有關的標準的制定,TC97/SC6主要處理電信領域的標準,TC97/SC6/WG1則主要負責數據鏈路協議標準。一個ISO標準從最初的提名到真正發(fā)行要經歷七個步驟。
35ISO(Cont.)ISO制定的很多標準是與另一個標準化組織,國際電工技術委員會IEC(InternationalElectrotechnicalCommission),合作制定的。IEC關心的主要是電子和電氣工程標準(器材、元件以及測量方法的標準化)。在信息技術領域,雖然IEC強調的是硬件,而ISO強調的是軟件,但它們的職能在很多地方有所重疊。1987年由這兩個組織聯合成立了聯合技術委員會JTC,同時ISO的TC97宣告解散。代替舊的ISO的TC97組織是ISO/IECJTC1,而其下屬的各分委員會SC的名稱仍用原來TC97中的各分委員會的序號。這個委員會負責信息技術領域文檔的開發(fā),這些文檔最終可能成為ISO及IEC的標準。36ISO(Cont.)ISO制定的與協議有關的著名標準:OSI/RM(ISO7498),TC97/SC16制定,雖然沒有流行,但其中有很多協議被廣泛使用形式描述語言LOTOS和Estelle,ISOTC97/SC21/WG1下的2個不同的子工作組分別制定的,它們得到了廣泛的應用。
一致性測試序列標準:ISO9646-1(CCITTX.290)一般概念ISO9646-2抽象測試集(suite)規(guī)范ISO9646-3樹表組合記法TTCN(TreeandTabularCombinedNotation)ISO9646-4測試實現ISO9646-5一致性認證處理對測試實驗室及其客戶的要求ISO9646-6測試實驗室的操作37CCITTandITU-TCCITT(InternationalTelephoneandTelegraphConsultativeCommittee,國際電話與電報顧問委員會)最開始主要從通信的角度考慮一些標準的制定。隨著科學技術的發(fā)展,通信與信息處理的界限變得比較模糊了。于是,通信與信息處理就都成為CCITT與ISOTC97共同關心的領域。
很多ISO制定的標準,CCITT均有與之相對應的標準。
CCITT的建議書X.200就是開放系統(tǒng)互連參考模型,它與ISO7498基本上是相同的。
CCITT制定的著名標準:X.25形式描述語言SDL(SpecificationandDescriptionLanguage)廣泛用于交換系統(tǒng)的描述。
38CCITTandITU-T(Cont.)ITU-T是國際電信聯盟ITU(InternationalTelecommunicationUnion)下屬的電信標準部,它的成員主要是各國政府組織和得到許可的私人運營商。成立于1993年3月1日,主要任務是制定電話、電報和數據通信接口的技術建議。它取代了原國際電報電話咨詢委員會CCITT。人們仍然常常遇到CCITT建議,例如,CCITTX.25,雖然自1993年起這些建議都打上了ITU-T標記。ITU-T的實際工作是在研究組SG(StudyGroup)完成的,通常有400人。為了能夠完成工作,研究組又分成了很多工作組WG(WorkingGroup),然后又再分為專家小組(ExpertTeam),最后分成特別小組(AdHocGroup)。39IFIP國際信息處理聯盟IFIP(InternationalFederationforInformationProcessing),雖然不直接參與協議的標準化,但它的主要目的之一是作為CCITT和ISO之間溝通的橋梁。IFIP成立于1960年,經常組織一些協議形式化描述與驗證方面的國際會議,例如,JointInternationalConferenceonFormalDescriptionTechniquesforDistributedSystemsandCommunicationProtocols(FORTE)andProtocolSpecification,TestingandVerification(PSTV)。40IETF因特網協會ISOC因特網體系結構研究委員會IAB因特網研究指導小組IRSG因特網研究部IRTF因特網工程部IETF因特網工程指導小組IESG領域領域…WGRGWGWGWG……RG…IETF網址:41IETF(Cont.)因特網在制定其標準上很有特色:面向公眾。所有技術文檔都可從因特網上免費下載,而且任何人都可以用電子郵件隨時發(fā)表對某個文檔的意見或建議。這種方式對因特網的迅速發(fā)展影響很大。因特網標準:RFC(RequestForComments)的意思就是“請求評論”。所有的RFC文檔都可從因特網上免費下載。
并非所有的RFC文檔都是因特網標準,其中只有一小部分最后才能變成標準。42IETF(Cont.)因特網草案建議標準草案標準因特網標準歷史的RFC實驗的RFC提供信息的RFC因特網草案(InternetDraft)建議標準(ProposedStandard)RFC文檔草案標準(DraftStandard)因特網標準(InternetStandard)43W3CWorldWideWebConsortium(萬維網聯盟)promotestheWebbyproducingspecificationsandreferencesoftware.為解決Web應用中不同平臺、技術和開發(fā)者帶來的不兼容問題,保障Web信息的順利和完整流通,W3C制定了一系列標準并督促Web應用開發(fā)者和內容提供者遵循這些標準。標準的內容包括使用語言的規(guī)范,開發(fā)中使用的導則和解釋引擎的行為,等等W3Cisfundedbyindustrialmembersbutitsproductsarefreelyavailabletoall.TheConsortiumisrunbyMITLCSwithINRIAactingasEuropeanhost
andKeioUniversityinAsia,incollaborationwithCERNwheretheweboriginated.萬維網發(fā)明者蒂姆·伯納斯-李(TimBerners-Lee)獲得2016年ACM“圖靈獎”CERN(歐洲粒子物理研究所)44ATMForumTheAsynchronousTransferModeForumisaworldwideorganization,aimedatpromotingATMwithintheindustryandtheendusercommunity.FormedinOctober1991,withfour(4)members,theATMForummembershipcurrentlyincludesmorethan700companiesrepresentingallsectorsofthecommunicationsandcomputerindustries,aswellasanumberofgovernmentagencies,researchorganizationsandusers.45ANSIFoundedin1918,theAmericanNationalStandardsInstitute(ANSI,美國國家標準化組織),isaprivate,not-for-profitmembershiporganizationthatcoordinatestheU.S.voluntaryconsensusstandardssystemandapprovesAmericanNationalStandards.ANSIconsistsofapproximately1,300nationalandinternationalcompanies,30governmentagencies,20institutionalmembers,and250professional,technical,trade,laborandconsumerorganizations.FamousStad.:ANSIC46IEEETheInstituteofElectricalandElectronicsEngineers(電氣和電子工程師協會)istheworld’slargesttechnicalprofessionalsociety(專業(yè)技術協會).Anon-profitorganization,IEEEpromotes(促進)thedevelopmentandapplicationofelectrotechnology(電工)
andalliedsciencesforthebenefitofhumanity,theadvancementoftheprofession,andthewell-beingofit’smembers(為了人類的利益,技術的進步,會員的福祉,促進電工和相關科學的發(fā)展和應用).FamousStandards:IEEE802series,eg.802.3,802.1147ACMAssociationforComputingMachinery(founded1947,(美國)計算機學會)isaninternationalscientificandeducationalorganizationdedicatedtoadvancingtheart,science,engineering,andapplicationofinformationtechnology(其宗旨在于不斷地推動計算機科學與技術的發(fā)展),servingbothprofessionalandpublicinterestsbyfosteringtheopeninterchangeofinformationandbypromotingthehighestprofessionalandethicalstandards.SinceitsinceptionACMhasprovideditsmembersandtheworldofcomputerscienceaforumforthesharingofknowledgeondevelopmentsandachievementsnecessarytothefruitfulinterchangeofideas.48ACM(Cont.)OvertheyearsACMhasflourishedalongwiththeindustryitself,playingamajorroleinenrichingthequality,formandfunctionofcomputerusage.ACMformsSpecialInterestGroups(SIGs)whichfocusonspecificareasofcomputerscience.(/sigs)DataCommunication(SIGCOMM)Security,AuditandControl(SIGSAC)ComputerGraphicsandInteractiveTechniques(SIGGRAPH)Hypertext/Hypermedia(SIGLINK)Multimedia(SIGMM)49Obtainingstandarddocuments:Standardsbodiesdistributetheirdocumentsinseveralfileformatsandtodifferentgroupsororganizations.MoststandardsareavailableontheInternetviaFTP,Gopher,ortheWWW.Manysiteshavesearchengineswhichallowuserstoobtaindifferentdocuments,allofwhichpertaintothesamestandard/protocol.50Obtainingstandarddocuments(Cont.)Manystandardsmustbepurchasedbeforeyoumayimplementproductsbasedonthem.However,thedocumentsarefree.Somestandardsbodiesrequirepaymentup-front(預先)
beforeyouarepermittedaccesstothestandardsdocuments.Stillotherstandardsbodiestakeanopenapproachwheredocumentsareentirelyfreetoreadersandimplementationvendors(RFCs).51Obtainingstandarddocuments(Cont.)DocumentFormats:Text/ASCII-mostpopularformat.Postscript-requiresapostscriptprinterorTeX/LaTeXtoview.WordforWindows-MicrosoftWindowseditor.HTML-browseabledocumentswithlinkstootherreferences.PDF-AdobeAcrobathyper-linkformat.52Obtainingstandarddocuments(Cont.)DocumentLanguages:Mostinternationalstandardsbodiesoffertheirdocumentswritteninpopularspokenlanguages(大多數國際標準化組織所提供的文檔一般用多種流行的口語編寫),including:EnglishFrenchSpanishNationallanguageoftheorganization’sorigin.53IndustryControlandAcceptanceCommonlyintoday’scomputerindustry,theacceptanceofproductsarefacilitatedbytheconformancetoandsupportofstandards(與標準一致性和對標準的支持能夠提高產品的接受程度).Mostproductsbecomeobsoleteiftheyareonlybasedonproprietaryspecificationsanddonotsupportstandards.Ifacompanymaintainscontroloverthemajorityofproductsbasedonaparticulartechnology,thatcompanycanusuallydictate(主宰)thedirectionoftheindustryandanystandardstofollow.54內容提要課程概述1協議2協議工程355ProtocolEngineering:Why?網絡類型的多樣性應用的多樣性網絡系統(tǒng)的多樣性導致在協議方面的體現多樣性分布性異步性并發(fā)性不穩(wěn)定性復雜性正確性完備性安全性可移植性標準化導致用直覺的工程方法不能保證協議的協議工程(ProtocolEngineering)軟件工程的經驗上個世紀七十年代末人們開始用形式化的方法描述通信協議。1981年,在軟件工程思想的基礎上,Piatkowski首先提出了“協議工程(PE,ProtocolEngineering)”的概念協議工程學用形式化方法描述協議設計和維護中的各個過程,它是以協議軟件為研究對象的軟件工程,而且建立了一套比一般軟件工程方法更為嚴格、更為數學化的理論和方法。協議工程過程集成化(Integrated)、形式化(Formal)的協議開發(fā)過程目的是減少協議開發(fā)過程中潛在的錯誤,提高協議開發(fā)的效率,促進協議標準化的發(fā)展。56ProtocolEngineering:What?Piatkowski,T.F.(1981).Anengineeringdisciplinefordistributedprotocolsystems.Proc.IFIPWorkshoponProtocolTesting—TowardsProof?,pp.177–215.在以往的協議開發(fā)過程中,各個階段并不互相銜接,各個階段的研究人員完成自己的工作就不再管其他的工作。協議設計者憑自己的經驗和智慧設計出協議,用自然語言進行描述,經過他人審定或模擬之后,就予以公布。其他的人只有在感興趣時才采用某種方法和理論對協議進行驗證。協議實現者往往根據自己的環(huán)境和要求修改協議,協議實現之后不考慮實現與協議規(guī)范是否一致。協議的測試往往由協議實現者自己進行,這實際上是一種程序調試。57ProtocolEngineering:What?所謂“集成化”,就是指協議描述、驗證、實現和測試等技術前后銜接。所謂“形式化”,就是指用形式描述技術FDT(FormalDescriptionTechnique)貫穿協議開發(fā)的各個階段。利用形式化描述語言FDL(FormalDescriptionLanguage)對協議進行形式化描述FDL以一種或多種形式化描述技術為基礎,有嚴格的語法和語義定義,抽象于具體的實現,可以符號執(zhí)行,可以轉換、翻譯成程序設計語言。當進行形式化描述后,協議的驗證、自動實現、測試就可以在一個集成化的協議工程系統(tǒng)中進行。58ProtocolEngineering:What?協議工程過程中協議的表現形式:59ProtocolEngineering:Procedure非形式化協議規(guī)范形式化協議規(guī)范形式化描述與機器無關的源代碼實現代碼(產品)編譯產品測試器測試序列發(fā)生器一致性測試性能分析模擬驗證設計用戶需求說明實現60PEActivities:Design我們的定義:根據協議的需求說明構造協議的非形式描述文本(經過非形式的驗證分析)稱為協議設計;而將“協議的設計、形式描述、驗證、實現、測試、運行”這一全過程稱為“協議開發(fā)”,即協議開發(fā)是指協議工程活動的全過程。
其它定義:將協議設計定義為“從協議的需求說明到協議的形式描述,并經過嚴格驗證和性能分析”這一過程,或定義為協議工程活動的全過程,即相當于“協議開發(fā)”。
包括:協議環(huán)境分析、協議的功能設計、協議組織形式的確定、協議元素的構造、協議文本的編制等。61PEActivities:Design(Cont.)協議設計涉及到很多技術,如差錯控制、流量控制、連接管理、路由選擇等。協議設計還必須遵循一些基本原則,如結構化、模塊化等。
協議設計階段的結果是非形式描述協議文本。協議設計質量的好壞是直接關系到開發(fā)出來的協議性能、功能是否能滿足用戶需求的一個重要因素。課程的重點內容62PEActivities:FormalDescrpt.通信系統(tǒng)行為的復雜性增大了行為描述的難度,人們必須借助一種語言或技術來準確地描述系統(tǒng)行為。在過去,人們習慣使用自然語言進行協議描述(用自然語言寫協議的規(guī)格說明或規(guī)范),優(yōu)點是:方便、易懂、表達能力強致命缺點是:不嚴格、不精確、結構不好、沒有描述標準和有二義性不同的人對協議描述的理解不一樣導致不同的協議實現之間不能實現互連,甚至還會得出錯誤的協議。
且很難進行協議驗證、協議實現和測試的自動化。
解決辦法:形式化技術FDT(FormalDescriptionTechnique)63PEActivities:FormalDescrpt.采用形式描述技術的最終目的是:為開發(fā)者提供一種分析的方法;作為對開發(fā)結果驗證的基礎;為設計人員和應用人員提供交流途徑;作為開發(fā)文檔能在將來再開發(fā)時使用。
理想的形式描述技術應該既能描述系統(tǒng)的行為特征,又能進行操作:在系統(tǒng)需求分析和設計階段,它應該是一種描述語言在系統(tǒng)實現階段它應該是一種編程語言。形式描述技術是將協議工程各階段在技術上銜接起來的紐帶,因此,它對協議工程的發(fā)展起決定性作用。64形式描述模型
有限狀態(tài)機FSM(FiniteStateMachine)Petri網(PetriNet)時態(tài)邏輯TL(TemporalLogic)通信系統(tǒng)演算CCS(CalculusofCommunicationSystem)通信順序進程CSP(CommunicatingSequentialProcesses)形式文法FG(FormalGrammar)
形式描述語言
CCITT制定的SDLISO制定的Estelle和LOTOS對象管理組織OMG制定的統(tǒng)一建模語言UML課程的重點內容PEActivities:FormalDescrpt.65PEActivities:VV協議驗證(VerificationandValidation)技術和形式描述技術是同步發(fā)展的在進行協議實現之前還要進行以下兩項工作:在語法和語義方面進行驗證;進行計算機模擬。
協議的驗證主要內容包括:可達性分析死鎖和活鎖檢測協議的有界性和完整性檢查協議的動作序列檢查通道溢出檢查等
66PEActivities:VV(Cont.)驗證方法主要有兩類:模型檢查(ModelChecking)最常見方法:可達性分析,它包括狀態(tài)窮舉,狀態(tài)隨機枚舉,狀態(tài)概率枚舉等方法重要問題:狀態(tài)空間爆炸證明(Proving)用推理演算方法嚴密地證明協議的各種性質其他方法:模擬(Simulation)通過一些模擬試驗來測試協議的各種性質67PEActivities:Implementation協議實現是指由協議規(guī)范到協議的可執(zhí)行目標代碼的過程協議的實現必須滿足協議規(guī)范的要求,以及針對具體應用需要提供附加機制協議實現的自動化是協議工程的目的之一,但完全自動化幾乎是不可能的。協議不是針對某種機器或者某種特定環(huán)境而設計的,而且協議實現者還要處理很多協議設計中沒有說明的技術問題通過形式化描述技術可實現半自動化,兩個步驟:第一步利用翻譯程序將協議的形式描述文本轉換成與機器無關的源代碼(程序設計語言,如C語言)手工編寫與機器有關的、在協議規(guī)范中沒有描述的問題的處理代碼。協議實現不在本課程的討論范圍68PEActivities:Testing測試是指驗證協議的實現,一般主要考慮兩個方面:
協議一致性測試(conformancetesting)。即檢測新協議實現是否能滿足該協議規(guī)范所規(guī)定的規(guī)則。
對協議實現的評價。分析協議實現的其他性質,如性能參數等。
協議一致性測試是協議工程活動中重要的一環(huán)。如果協議實現不能通過一致性測試,則表明該協議實現與其它通過一致性測試的協議實現不能在同一個全局系統(tǒng)中很好地協調工作。
互操作測試vs.一致性測試協議一致性測試要做到兩點:徹底性和標準化“徹底性”是指必須徹底測試所實現的協議,“標準化”是指使用的測試集必須是標準的。
69PEActivities:ConformanceTesting一致性測試的基礎:FDT一致性測試要解決兩個問題:測試系統(tǒng)設計:重點解決測試方法和測試系統(tǒng)的體系結構問題測試序列的產生:解決測試的“徹底性”和“標準化”問題,以及測試序列的自動生成和形式化描述問題。
測試序列生成器可以產生各種可能發(fā)生的情況組合,以測試所實現的協議是否在各種正常和非正常情況下均能正確工作。
國際標準化組織ISO發(fā)布了“開放系統(tǒng)互連一致性測試方法和框架(ISO9646)”來指導一致性測試工作,并為許多常用的標準協議制訂了相應的一致性測試序列。
協議工程中技術難度最大,業(yè)界又很需要。70PEActivities:PerformaceTesting協議的性能主要包括吞吐量和時延
協議的性能分析目的是改善協議機制,提高執(zhí)行效率。
可用數學分析方法和模擬方法來進行,兩者都基于排隊論和概率論
本課程不涉及此課題
71PEActivities:Maintenance協議維護(Maintenance)是指對已運行的協議的修改、補充等,故協議的維護可能包含協議設計、協議的驗證和分析、協議測試,以及協議實現等多項任務。良好的設計有助于降低維護成本。72參考以下PPT介紹的有關協議工程概念的不同觀點,供參考73ProtocolEngineering:Another74ProtocolEngineering:Another(Cont.)75協議開發(fā)過程(
FerreiraPires)ProtocolengineeringUser
requirementsService
specificationProtocol
specificationProtocol
implementationCoursesDesignof
TelematicssystemsProtocolimplementationProtocol
designService
design76思考題1-1試論“軟件工程”與“協議工程”的關系。1-3從你所知的網絡協議中選擇一個,來簡要說明該協議的三要素。第2章協議設計
(1-協議模型)78內容提要協議設計概述1協議模型279協議設計概述協議設計的含義協議設計是一件很困難的事情Example:ClaytonTunnelProtocolExample:藍軍與白軍作戰(zhàn)問題80協議例子-ClaytonTunnelProtocolEngland,ClaytonTunnel:1.5英里1841,WilliamCookeTelegraph(電報)insteadofOpticaltelegraphforRailwayTunnelProtection,節(jié)省成本(只需1/10)和提高速度。Purpose:avoidthatmorethanonetrainisinthetunnelatthesametimeFirstlyusedonseverallinesoftheGreatWesternRailwaysinEngland.1842年,Cooke“火車可以無所畏懼地行駛,而無論其時間是否正確,也不管其是否在正確的軌道上,因為在使用該系統(tǒng)后,其速率總可以及時地降下來,從而避免碰撞”8181ClaytonTunnelProtocol-電報(Telegraph)基本原理,1753,C.M給Scots雜志的信中描述了一個使用一些平行電線來通信的電子電報。1830,英國MichaelFaraday和美國JosephHenry發(fā)現了電磁感應1837,WilliamCooke利用電流來使處在接收端磁場中的羅盤指針發(fā)生偏轉,從而得到信號。1837年6月12日,第一個電報系統(tǒng)的專利,“五磁針信號系統(tǒng)”。82ClaytonTunnelProtocolsemaphoreswithblock-intervalsystem(空閑/阻塞信號系統(tǒng))turntoredautomaticallyasatrainpassessettogreenbyhandafterwardsredandwhiteflagstoreplacemalfunctioningsemaphoresignalmenonbothendslinkedbytelegraphiclinemalfunctionofblock-intervalsystemsignalledbyabell83ClaytonTunnelProtocol:報文(Messages)Message:TT:TraininTunnelTF:TunnelisFreeTL:HastheTrainlefttheTunnel?84ClaytonTunnelProtocol:差錯控制ErrorFreeFunctioningtrainenterstunnel,signalmanAsendsTTtoBtrainleavesthetunnel,BsendsTFtoAAsetssemaphoretogreenbyhandUnderErrorSituationtrainenterstunnel,AsendsTTtoBbellrings,Ashowsredflagtonexttraintrainleavesthetunnel,BsendsTFtoAAshowswhiteflagtonexttrain85ClaytonTunnelProtocol:事故(Accident)OnedayinAugust1861atClaytonTunnel...train-1enterstunnel,block-intervalsystemfails(failstosetthesignaltored),sothebellwarnssignalmanA,ThenAsendsTTtoB,thenfetchestheredflagtowarnthenexttrain.train-2comestoofast,andcouldnotstopintime,hasalreadypassedthegreensignal.“Fortunately”,itsdrivercatchesaglimpseoftheredflagjustintimeasheentersthetunnel.train-3seestheredflagandstopsbeforethetunnelentrance.86ClaytonTunnelProtocol:事故(Accident)AsendsanotherTTtoB(fortrain-2)Bdoesnotunderstandsecond
TTBecausetheprotocoldidnotaccountforthisevent,sothemeaningoftwosubsequentTThadnotbeenspecified.AsendsTL(hasthetrainleftthetunnel?)toB87ClaytonTunnelProtocol:事故(Accident)Bseestrain-1andsendsTFAthinkstrain-2leftthetunnelandshowswhiteflagtotrain-3train-2hadseenredflagbefore,isafraidandtriesto
returntopositionA
aftersomedeliberation.88ClaytonTunnelProtocol:事故(Accident)Resulttrain-3andtrain-2crashed:21peoplediedand176gotinjuredThesetofinstructionsgiventothesignalmenwasincomplete,whichleadstotheaccident89ClaytonTunnelProtocol:LessonsAhistorianofrailwaydisasters(Nock,1967):
“Onecanalmosthearthesamecommentbeingmadetimeaftertime.‘Icouldnotimaginethatcouldeverhappen.’Yetbitterexperienceshowedthatitcould,andgraduallytheregulationsandrailwayengineeringpracticewereelaborated.”Protocol:UsedUndernormalcircumstancesandthatallowedforasaferecoveryfromunexpectedevents.90ClaytonTunnelProtocol:Lessons(Cont.)EventhemostsimpleprotocolsmaycontainerrorsProtocolsmustbefullyverifiedbeforetheyareputinoperationtechniquestostructure,design,analyzeandverifyprotocolsarenecessary91一個簡單的網絡協議(藍軍與白軍)謝希仁教授《計算機網絡》的一道作業(yè)題:藍軍與白軍作戰(zhàn),藍軍占據兩個山頂,白軍駐扎在這兩個山之間的山谷。其力量對比是:一個山頂上的藍軍打不過白軍,但兩個山頂的藍軍協同作戰(zhàn)則可戰(zhàn)勝白軍。一個山頂上的藍軍擬于次日正午向白軍發(fā)起攻擊。于是發(fā)送電文給另一山頂上的友軍。但通信線路很不好,電文出錯或丟失的可能性較大。因此要求收到電文的友軍必須送回一個確認電文。但此確認電文也可能出錯或丟失。試問能否設計出一種協議使得藍軍能夠實現協同作戰(zhàn)因而一定(即100%)取得勝利?92明日正午進攻明日正午進攻如果情況如上所述,次日藍軍1和藍軍2的協同進攻必定獲勝。但情況并非如此簡單。因為所發(fā)的報文可能會丟失。明日正午進攻丟失!白軍藍軍1藍軍2因此藍軍1必須在收到藍軍2的確認后才能進攻93明日正午進攻確認明日正午進攻確認因此,收到報文后必須加以確認但這個確認報文也可能丟失:確認丟失!白軍藍軍1藍軍2故藍軍2必須要收到藍軍1發(fā)出的對此“確認”的確認,才能知道發(fā)送出的確認是否被藍軍1正確收到。94明日正午進攻確認明日正午進攻確認因此藍軍1收到確認報文后應發(fā)送對此“確認”的確認。對“確認”的確認對“確認”的確認藍軍1無法知道最后發(fā)送的這個確認是否被藍軍2收到,仍需收到藍軍2發(fā)來的確認才行!白軍藍軍1藍軍295白軍藍軍1藍軍2協議必須能夠應付所有的(而不是部分的)不利情況,像這樣簡單的問題居然無法設計出一種協議來解決。96內容提要協議設計概述1協議模型2法律上的(dejure)國際標準開放系統(tǒng)互聯參考模型OSI/RM并沒有得到市場的認可。非國際標準TCP/IP現在獲得了最廣泛的應用。TCP/IP常被稱為事實上的(defacto)國際標準。兩種網絡模型OSI/RM的7個層次98層號中文名稱英文名稱英文縮寫7應用層ApplicationLayerA6表示層PresentationLayerP5會話層SessionLayerS4傳輸層TransportLayerT3網絡層NetworkLayerN2數據鏈路層DataLinkLayerDL1物理層PhysicalLayerPHTCP/IP99對應OSITCP/IPTCP/IP主要協議高層(5-7)應用層TELNET,FTP,SMTP,DNS,HTTPNFS,SNMP傳輸層(4)傳輸層
TCPUDP網絡層(3)網際層IGMPICMP
IP
ARPRARP
低層(1-2)網絡接口層可使用各種物理網絡OSI/RM、TCP/IP模型100應用層表示層會話層傳輸層網絡層數據鏈路層物理層應用層傳輸層IP層網絡接口層OSI的概念清楚、理論也較完整,但它既復雜又不實用TCP/IP簡潔實用應用層傳輸層網絡層數據鏈路層物理層綜合OSI和TCP/IP的優(yōu)點OSI/RMProblems只要遵循OSI標準,一個系統(tǒng)就可以和位于世界上任何地方的、也遵循這同一標準的其他任何系統(tǒng)進行通信。在市場化方面OSI卻失敗了。OSI的層次劃分并也不太合理,有些功能在多個層次中重復出現。
OSI標準的制定周期太長,因而使得按OSI標準生產的設備無法及時進入市場;OSI的專家們在完成OSI標準時沒有商業(yè)驅動力;OSI的協議實現起來過分復雜,且運行效率很低;101102OSI/RMProblemsTannenbaum:BadtechnologyBadtimingBadimplementationBadpolitics103BadtechnologyModelandprotocolflawedBoundariessomewhatarbitraryTopthreelayersneverquiteresolved
(application,presentation,session)Whysevenlayers?ManyfundamentalissuescanbeaddressedatmultiplelayersReliabilityFlowcontrolSecurityAddressing/namingStandardizedbeforeimplementedDesignbycommitteew/oimplementationvs.designbyimplementors/researchers/engineers104Timing:It’simportantforstandardsMITD.Clark‘s“apocalypse(啟示)ofthetwoelephants”(/~jabsher/apoc_eleph/apoc_eleph.html)ThebestperiodforstandardizationisbetweenburstofresearchandburstofmarketingTheperiodisveryshort105BadtimingMITD.Clark‘s“apocalypse(啟示)ofthetwoelephants”Technologyactivityvs.timetostandardizationTCP/IPalreadyentrenchedbymid/lateeightiesOSI/RMisputupintheburstofmarketingofTCP/IP106BadimplementationsComplexity
huge&slowimplementations(考慮大而全,要全部實現就笨拙且效率低)Competition(BSDTCP/IP)wasgood,free,andeasytodeploy107BadpoliticsPushedbyEuropeanCommunityandU.S.governmentNegativeimageofgovernmentdictatingstandardsRemember“ClipperChip”TheClipperchipwasachipsetthatwasdevelopedandpromotedbytheU.S.NationalSecurityAgencyasanencryptiondevicetobeadoptedbytelecommunicationscompaniesforvoicetransmission.Itwasannouncedin1993andby1996wasentirelydefunct.TCP/IP2004年度圖靈獎授與文頓·G·瑟夫和羅伯特·E·卡恩。1974年5月,羅伯特·卡恩和溫特·瑟夫在IEEE期刊上發(fā)表了題為《關于分組交換的網絡通信協議(AProtocolforPacketNetworkIntercommunication)》的論文,提出了使用傳輸控制協議TCP(TransmissionControlProtocol)和網際互連協議IP(InternetProtocol)來實現計算機網絡之間的互連。108109TCP/IP:FeaturesLayeringnotstrict-onlywhereappropriateCandefinenewabstractionsontopofanyexistingprotocolIP/UDPprovidessimple“sendapacket”svcEx:RPC,DNS,IPphone,etc.Hourglass(沙漏)shapeIPcenterpiece(核心),commondenominatorDesignandimplementationgohand-in-handIETFrequirestwoindependent,interoperableimplementationsbeforestandardizationThe“dogma(教義)”:
Werejectkings,presidents,andvoting.Webelieveinroughconsensus(共識)andworkingcode.D.ClarkTCP/IP模型110應用層運輸層網際層網絡接口層主機A主機B路由器網絡
2網絡
1應用層運輸層網際層網絡接口層網際層網絡接口層4321路由器在轉發(fā)分組時最高只用到網絡層而沒有使用運輸層和應用層。111TCP報文IP數據報MAC幀應用層數據首部首部尾部首部鏈路層及以下使用硬件地址硬件地址網絡層及以上使用IP地址IP地址TCP/IP模型112HA1HA5HA4HA3HA6主機H1主機H2路由器R1硬件地址路由器R2HA2IP1IP2局域網局域網局域網通信的路徑H1→經過R1轉發(fā)→再經過R2轉發(fā)→H2查找路由表查找路由表TCP/IP模型兩臺主機之間的數據傳輸,總是在一段一段的鏈路上傳送的113IP1HA1HA5HA4HA3HA6HA2IP6主機H1主機H2路由器R1IP層上的互聯網MAC
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球農業(yè)張力計行業(yè)調研及趨勢分析報告
- 2025-2030全球便攜式激光測風雷達行業(yè)調研及趨勢分析報告
- 2025-2030全球軍用聚脲防護涂料行業(yè)調研及趨勢分析報告
- 2025-2030全球室溫固化環(huán)氧膠行業(yè)調研及趨勢分析報告
- 2025年全球及中國戰(zhàn)術靶標系統(tǒng)行業(yè)頭部企業(yè)市場占有率及排名調研報告
- 硅礦開采合同書
- 股票期權協議書合同協議
- 個人房屋買賣合同協議書模板
- 鐵礦設備買賣合同
- 2025隧道施工合同
- 中職安全管理方案
- 百詞斬托福詞匯excel版本
- 高考寫作指導常見議論文論證方法知識梳理與舉例解析課件27張
- (完整word版)高中英語3500詞匯表
- 玻璃反應釜安全操作及保養(yǎng)規(guī)程
- 高中英語新課標詞匯表(附詞組)
- 2023年心理咨詢師之心理咨詢師基礎知識考試題庫附完整答案【有一套】
- 證券公司信用風險和操作風險管理理論和實踐中金公司
- 一級建造師繼續(xù)教育最全題庫及答案(新)
- 2022年高考湖南卷生物試題(含答案解析)
- GB/T 20909-2007鋼門窗
評論
0/150
提交評論