1 / 28

协议开发的理论与方法

协议开发的理论与方法. 罗军舟 东南大学计算机科学与工程系 jluo@seu.edu.cn. 计算机网络. 计算机学科发展的一个特征: 应用驱动 计算机网络: 应用和工程 → 技术 → 科学 理论和方法: 体系结构与协议, 协议开发. 协议研究. Routing QoS Multicast Admission Control & Congestion Control Switching Middleware ………. 协议发展. IBM SNA 、 ISO OSI/RM 和 DoD TCP/IP 等著名体系结构和协议已发挥了不可估量的作用;

idola
Download Presentation

协议开发的理论与方法

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 协议开发的理论与方法 罗军舟 东南大学计算机科学与工程系 jluo@seu.edu.cn

  2. 计算机网络 • 计算机学科发展的一个特征: 应用驱动 • 计算机网络: 应用和工程→技术→科学 • 理论和方法: 体系结构与协议,协议开发

  3. 协议研究 • Routing • QoS • Multicast • Admission Control & Congestion Control • Switching • Middleware • ………

  4. 协议发展 • IBM SNA、ISO OSI/RM和DoD TCP/IP等著名体系结构和协议已发挥了不可估量的作用; • SNA是协议体系结构的开拓者; • OSI/RM是协议的指路灯塔; • TCP/IP是目前盛行的实事上的工业标准; • XTP、VMTP、Delta-t和NETBLT的出现,将使计算机网络进入一个高性能的时代。

  5. 协议工程 • 随着网络服务要求的提高,网络系统的复杂性在协议方面体现出空间分布性、并发性、异步性、不稳定性和多样性,高质量的通信协议再也不可能靠工程直觉方法来设计了; • 协议工程(Protocol Engineering)用形式化的方法来描述在协议设计和维护中的各个活动,建立一套严格的协议设计方法,使协议开发的整个过程一体化、系统化和形式化,从而保证协议的完整性、正确性、安全性和可移植性。

  6. 协议开发主要活动间的关系

  7. 形式描述技术FDT的特征 • 完整的语法和语义定义; • 体系结构、服务和协议的可表达性; • 协议重要特性的可分析性; • 支持复杂协议的管理; • 支持逐步求精的方法; • 支持实现独立性; • 支持协议生命期的各环节(描述、验证、实现、一致性测试、……); • 支持自动设计、验证、实现和维护方法。

  8. FDT种类 • 状态变迁模型 • 有限状态机FSM • 通信有限状态机CFSM • Petri网 • 程序设计语言模型 • 抽象程序 • CCS,CSP • 时态逻辑

  9. FDT种类 • 进程代数(Process Algebra):用代数的方法来研究协议,它有一套完善的等价理论,如果与网论相结合,可以用一套完善的分析技术,提供一个结构清晰的模型。进程代数与随机模型相结合(如马尔可夫模型),被应用到协议的性能评价。 • 混合模型(如扩展的FSM):扩展的FSM过于复杂并且缺乏形式语义,分析功能较弱。

  10. 国际标准 FDT-SDL • SDL (Specification and Description Language):FSM + extensions 1976年由CCITT(ITU)颁布 ,一种基于扩展状态变迁和抽象数据类型的混合技术,被电信公司广泛用于描述电子分组交换系统,最近已发布了SDL-2000的新版本 。

  11. 国际标准 FDT- LOTOS • LOTOS (Language Of Temporal Ordering Specification):CCS+ADT • 80年代ISO制订OSI参考模型时发布,1988年确立了最后的国际标准文本。 • LOTOS提供形式语义,保证描述不存在二义性,便于分析和一致性测试理论的研究。LOTOS有二个组成部分,一部分基于过程代数,另一部分是基于ACT ONE的抽象数据类型。

  12. FDT的国际标准-Estelle • Estelle(Extended State Transition Model Language):EFSM + extended Pascal • Estelle也是基于扩展的状态变迁模型,但使用PASCAL语法和数据类型,它有一个形式化的独立于实现的语义。 • Estelle标准颁布以后, 一直到1994年,Estelle研究小组主要致力工具包的研制,1996年以后, Estelle标准又被改进了50多处,不过直到现在也没有见到Estelle 的升级版本。

  13. FDT与UML的结合 近年来UML (Unified Modeling Language) 被应用到协议开发中。 • UML简介 UML统一各种面向对象分析和设计方法的差异。1995年10月发布了第一个版本,现在UML2.0已经推出。如今UML已成为一个流行的、标准化的、通用目的面向对象的可视化模型语言,许多大的软件开发组织开始用它进行系统建模。

  14. FDT与UML的结合 • UML用于协议开发的优势 • 当今的形式化的协议开发技术缺少可视化; • 不支持协议开发的整个生命周期; 而上述两点正是UML的优势所在。 • UML用于协议开发的不足 UML缺少定义复杂通信系统协议的形式化语义,不能直接用它来开发协议,必须给UML增加一些语义功能。

  15. FDT与UML相结合— BDL • BDL (Behavioural Description Language) • 一个能够描述异步并发行为的语言BDL(把UML的面向对象技术引入到形式化的协议验证中); • 利用BDL可以一致性的操纵包含序列或协同图的UML行为视图,并且不同UML行为视图可以相互转换; • 在BDL中,用事件的偏序集合来表示对象间的相互交互,用对象间的一些基本的交互来描述整个系统的行为。

  16. FDT与UML相结合—GPDL • GPDL (Graphical Protocol Description Language ) • 一个图形化的协议设计语言,描述协议的结构和行为; • GPDL的重要性在于把UML的图形引入到了协议设计中,使之可视化; • GPDL包含两部分:一是图和文本,图的结构使协议设计形象化,当图形不能表示时,就用文字说明;另一部分是GAEL (Generic Action Extension Language)用来表达协议的语义信息,以弥补UML的不足。

  17. FDT与UML相结合—GPDL GPDL主要用于协议的设计和实现,用GPDL描述的协议可以比较容易地转换成SDL标准。

  18. SDL-2000 在三种主要的国际标准FDT中,SDL与UML结合的是较容易的,因为 • SDL是基于状态变迁技术的,而状态 图(state diagram)正是UML建模的5种图之一;一个状态图就是一个状态机 ; • SDL具有抽象数据类型,与UML的面向对象技术吻合。

  19. SDL-2000 SDL-2000是SDL-96和UML技术有机结合的版本, SDL-2000 = SDL-96 + UML

  20. 基于Petri网的FDT Petri网理论是在并发的概念上建立起来的,它直观地表示了非确定性,可以用于表达不同抽象级上的系统概念。 Petri网有一套成熟的数学理论工具,建立了许多分析技术,包括可达性分析、不变量分析(使用线性代数方法)、保持特性的变换(包括化简)、构造理论、形式语言理论、同步距离和网的分解和等价等。

  21. 基于Petri网的FDT 近几年人们的注意力集中在如何将代数的抽象数据类型,融合在高级网结构中,能够大大地提高描述协议和服务所用的高级Petri网系统的表示能力。

  22. 基于Petri网的FDT • 三种标准的FDT只支持协议工程的一至二个活动 • Estelle是一种过程语言,可以描述协议细节,用它描述的协议仅便于实现; • LOTOS描述协议实体的外部行为,不关心实体内部变化,描述的协议仅便于验证; • SDL是一种混合式的FDT,缺乏形式语义,缺乏分析技术。SDL-2000也只是吸收了UML的一些概念、方法,增加了面向对象的可视化设计功能,使之更好用,并没有从本质上提升SDL的分析能力 。

  23. 基于Petri网的FDT • Petri网具有异步特性并发,决定了它的主要应用方向是分布式系统 根据外延公理,变迁的发生完全由它的外延决定,与系统全局状态无关。因而网系统是异步并发的“自由王国”,没有主宰全局的中央控制,这很适合网络体系结构、协议和服务的特点 。

  24. 基于Petri网的FDT • Petri网的形式基础使它与其它并发模型建立了连接,这有益于分布式系统的描述和分析。 • Petri网用直观的图形表示形式,与物理系统相近,学习和理解这种语言相对容易。 • Petri网最大的优点是具备一套严密的数学理论,各种技术极有利于验证和分析。

  25. 基于Petri网的FDT • Petri网表现出面向对象技术的各个特性,将是一种优良的可用图形表示的面向对象语言。 为适应不同规范及验证的需求,从基本Petri网模型衍化出许多扩展模型系统,目前主要有:谓词/动作Petri网、时间Petri网(TPN)、带时态逻辑的Petri网、颜色Petri网(CPN)、面向对象Petri网(OOPN)、随机Petri网(SPN)、数字Petri网(NPN)等。

  26. 协议开发面临的挑战 • 支持协议工程整个生命期的FDT? • 协议的描述? • 支持协议开发的工具?

  27. 基于Petri网的协议开发的问题 • 自然语言描述的协议系统到Petri网系统的转换,相应的计算机辅助工具的开发,中间语言、一般模型、转换算法和规则的建立。 • 协议Petri网描述到协议实现的自动化,建立Petri网编译系统,实现网系统到目标代码转换的算法和模型。 • Petri网节点和可达状态的爆炸,包括适当的高级网系统和分层网系统建立、网系统的合成和化简和协议工程工作站的建立。 • 所建立的Petri网模型支持协议描述、协议验证、协议实现、性能分析、一致性测试等协议工程各个活动。

  28. 感谢各位领导和专家!请提出宝贵意见! Questions & Answers

More Related