南京邮电大学第1章概述第1章概述2内容提要课程概述1协议2协议工程3第1章概述3课程名称网络协议工程网络:三网(计算机网络、电信网络、CATV),分布式系统/操作系统协议:规定通信双方交换数据的格式以及有关的同步问题。工程:用工程化的方法来开发协议第1章概述4课程目标为什么要上这门课?研讨目标:协议开发中常见的设计技术、形式化描述技术和协议工程学的基本理论立足点:基于最基本的理论,结合最先进的技术,理解最本质的知识。本课程包括:阅读资料、面授教学、课堂讨论、学生讲授、习题讨论等环节。希望通过本课程的学习,不仅掌握所涉及的协议开发知识,而且锻炼一些研究生必备的科研技能。与协议有关的课程比较多,如:分布式系统、计算机网络、数据通信等。这些课程往往描述的是一些被广泛接受并被一些国际标准化组织标准化了的协议。它们并不解释:协议为什么正确工作、协议的设计过程,协议是不是有缺陷。而这些正是本课程要解决的问题。第1章概述5课程目标(续)内容要求:对协议工程学有一个基本认识重点掌握协议设计技术、形式化描述技术(FSM,SDL)了解协议验证技术和一致性测试技术锻炼的科研技能:独立解决一个具体科研问题的能力科研表达与沟通的能力撰写科技文章的能力面对一个并不熟悉的科研领域,可以做到独立查阅资料、确定一个具体的研究目标、制定实施计划、最终完成一个相对独立的研究。将已经掌握的科研内容,用精练的语言表达出来,通过与其他人讨论,更深入地掌握此方面知识。在独立解决了某个科研问题后,将科研成果以学术论文的形式表达出来。争取发表一篇论文。第1章概述6授课内容概述协议设计形式化描述技术(FSM,PetriNet,SDL,LOTOS,ESTELLE)协议验证协议一致性测试第1章概述7国内相关课程清华大学:计算机网络中的形式化方法和协议工程学主要内容:形式化描述方法、一致性测试技术北京邮电大学:协议工程与通信软件协议工程的概念协议模型技术协议形式化描述技术协议验证技术协议实现和测试技术MSC和SDL语言简介通信软件设计方法与实践第1章概述8国内相关课程(Cont.)中国科技大学软件学院:《通信系统软件开发》东南大学,河海大学研究生课程:《计算机网络协议工程》云南大学,华中科技大学,浙江理工大学等也开设了类似课程第1章概述9国外相关课程一些欧洲国家的大学普遍开设类似课程UniversityofTwente:ProtocolEngineeringUniversityofColorado:ComputerCommunication~cs522LUT:CommunicationsSoftwareandArchitecture第1章概述10先修课程计算机网络或数据通信操作系统分布式系统第1章概述11参考书目吴礼发著,《网络协议工程》,2011.4,电子工业出版社。GerardJ.Holzmann:《DesignandValidationofComputerProtocols》,PrenticeHallAt古天龙,蔡国永:《网络协议的形式化分析与设计》,电子工业出版社,2003.6龚正虎,《计算机网络协议工程》,国防科技大学出版社,1993.12R.Lai,A.Jirachiefpattana:《CommunicationProtocolSpecificationandVerification》,KluwerAcademicPublishers,1998第1章概述12内容提要课程概述1协议2协议工程3第1章概述13协议定义为网络中互相通信的对等实体间进行数据交换而建立的规则、标准或约定,是计算机网络不可缺少的组成部分,保证实体在计算机网络中有条不紊地交换数据。实体(Entity)是指任何可以发送或接收信息的硬件或软件进程,在大多数情况下,就是一个特定的软件进程。位于不同系统的同一层次内交互的实体,就构成了对等实体。转60页第1章概述14协议定义(Cont.)英格兰国家物理实验室NPL(NationalPhysicalLaboratory)的R.A.Scantlebury和K.A.Bartlett在一份备忘录(AprotocolforuseintheNPLdatacommunicationsnetwork)中最早将“协议(protocol)”一词用于描述数据通信过程。“协议是关于分布式系统进行信息交换时的一种约定,协议应按照语言的方式进行定义。”其于他们的观点:网络协议就是具有规定文法、语法和语义的语言,其中,文法给出了有效信息的精确格式,语法描述了数据交换的规则,语义规定了可交换信息的词汇及其含义。第1章概述15协议定义(Cont.)协议三要素(从语言的角度来理解协议):语法语义同步第1章概述16协议定义:语法在语言学中,语法是指语言组成成分(词、句等)之间以什么样的关系结合而构成语句或语言,也即是语言的结构方法和构成规则。网络协议中的语法的含义?网络协议中的语法体现为数据报文中的控制信息(通常在报文的首部)和各种控制报文的结构、格式,也即是规定报文的长度,报文中划分多少个域(Field),每个域的名称、意义、数据类型、长度等。其中,报文中各个域的类型、长度及相互间的位置、顺序关系则构成了词法。第1章概述17协议定义:语义网络协议的语义可以理解为协议数据报文中的控制信息和控制报文所约定的含义,即需要发出何种控制信息,完成何种动作以及做出何种响应。例如:报文首部控制信息中的目的地址信息指明了报文的目的地,接收到此报文的网络结点均将其作为进行路由选择的依据,因而规定在首部控制信息中在给定域给出目标结点地址就是一种语义。为了实现有连接的传输服务,设计了一套实现连接的控制报文。发起连接方构造一个请求连接的协议控制报文,这个“请求连接”就是该控制报文的语义。收端收到这个控制报文后,根据已知的格式分析规定域中报文类型码就可了解这个“请求连接”的语义,从而作出“允许连接”或“拒绝连接”的响应。第1章概述18协议定义:语义(Cont.)例如(续):“允许连接”报文和“拒绝连接”报文的格式和语义也是协议中约定好的,通信双方通过这些约定语义的控制报文按一定时序关系的交换即可实现建立连接的功能和提供有连接服务。其它的在协议中常使用的“数据收到确认”报文(ACK报文)、“出错通知”报文、“紧急通知”报文等等均可看成为具有特定语义的网络协议的语句,即协议的组成部分。第1章概述19协议定义:同步简单地说,同步是指事件实现顺序的详细说明。具体来说,同步是指通信过程中各种控制报文传送的顺序关系,例如“允许连接”或“拒绝连接”报文必须是作为请求连接报文的一种响应来发送,“拆除连接”报文也必须在建立连接后的某种条件下发送等等。这种控制报文发送的时序关系,也决定了通信双方所处的通信状态(发送状态、接收状态、等待状态等)的制约关系,所以常用通信双方的有限状态机的方法来描述网络协议。在有些文献中,也将这种同步关系视为协议语法的一部分。第1章概述20协议定义:进一步延伸进一步延伸为计算机通信协议。协议是计算机网络和分布式系统中各种通信实体或进程间相互交换信息时必须遵守的一组规则或约定。网络协议工程中的许多技术和方法均可应用到分布式系统中的进程间通信协议的设计活动当中。第1章概述21协议定义:网络体系结构大量的研制经验表明,对于非常复杂的计算机网络协议,其结构应采用层次式的。在计算机网络中,将计算机网络的各层及其协议的集合,称为网络的体系结构(architecture)。ISO的OSI/RM(开放系统互连/参考模型)IBM的SNA(系统网络体系结构)DEC的DNA(分布式网络体系结构)IETF的TCP/IP第1章概述22协议标准化Whatarestandards?Standardsaredocumentedagreementscontainingtechnicalspecificationstobeusedconsistentlyasrules,guidelines,ordefinitionsofcharacteristics,toensurethatmaterials,products,processesandservicesarefitfortheirpurposeInternationalStandardscontributetomakinglifesimpler,andtoincreasingthereliabilityandeffectivenessofthegoodsandservicesweuseIndustry-widestandardizationisaconditionexistingwithinaparticularindustrialsectorwhenthelargemajorityofproductsorservicesconformtothesamestandards第1章概述23协议标准化(Cont.)WhyPushForStandardization?Theaimistofacilitatetrade,exchangeandtechnologytransferthroughEnhancedproductqualityandreliabilityatareasonableprice.Greatercompatibilityandinteroperabilityofgoodsandservices.Simplificationforimprovedusability.Increaseddistributionefficiency,andeaseofmaintenance第1章概述24协议标准化(Cont.)Whatdoesastandardlooklike?-ISOexplainsthemajorcomponentsoftheirstandardsdocuments:Itcanbeanythingfromafour-pagedocumenttoa1000-pagetome,includingtwicetheweightofthestandarditselfininformativeannexes.Itmayspecifythetasksthatacertainrangeofequipmentmustbeabletoperform,ordescribeindetailanapparatusanditssafetyfeatures第1章概述25协议标准化(Cont.)Whatmakesupastandard?Itmaycontain:SymbolsDefinitionsDiagramsCodesTestmethods第1章概述26协议标准化(Cont.)OrganizationforStandardizationforProtocolsInternationalOrganizationforStandardization(ISO)国际电报电话咨询委员会(CCITT)InternationalTelecommunicationsUnion(ITU-T)InternetEngineeringTaskForce(IETF)InstituteofElectricalandElectronicsEngineers(IEEE)WorldWideWebConsortium(W3C)AssociationforComputingMachinery(ACM)AsynchronousT