首页 > 范文大全 > 正文

面向对象的实时通信系统的设计

开篇:润墨网以专业的文秘视角,为您筛选了一篇面向对象的实时通信系统的设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:面向对象技术虽然比较先进,但也存在效率较低的问题。本文将采用标准的应用于电信系统建设的面向对象分析和设计方法对实时通信系统进行设计,进一步验证面向对象方法的灵活性,动态可配置性,可维护性,可移植性等。

关键字:实时,电信,SMDS,面向对象分析和设计

Abstract: although the object-oriented technology is advanced, but there are also the problem of low efficiency. This article will use the standard used in telecommunication system construction of object-oriented analysis and design method of real-time communication system design, further validation object-oriented method of flexibility, dynamic can be equipped with sex, maintainability, portability, etc.

Keyword: real-time, telecom, SMDS, object-oriented analysis and design

中图分类号:TN91文献标识码:A 文章编号:

1. 概述

面向对象技术已经广泛使用于应用程序领域,特别是从传统的应用向高性能数值运算应用发展。然而,目前该技术在嵌入式电信系统中的应用研究仍较少。因为它通常被认为不适合应用于对实时性要求较高的电信系统。电信工程师在系统设计过程中需要更多关注软件工程问题,例如灵活性,动态可配置性,可维护性,可移植性等,而这些往往与“对给定架构的软件进行精细微调以获得最大性能”的传统方式相冲突。

本文的重点在于说明如何通过使用面向对象的分析和设计(OOAD)的方法,设计与实施一个简洁的交换式多兆位数据服务器(SMDS),并且仍然保持系统的实时性、高吞吐量和低延时传输。

2. 创建分布式SMDS服务器

2.1. 交换式多兆位数据服务

交换式多兆位数据服务(SMDS)是一种无连接的,运行于顶层网络的分组交换数据传输服务,主要用来提供高吞吐量和低延时传输,并能够在大型网络中进行维护。它可以用于多个节点的局域网(LAN)和广域网(WAN)之间的互联,并且为他们提供“any to any”的服务。

2.2. 系统需求

SMDS网络基于三层架构:一个由SMDS服务器群(SS)组成的基础交换网,一个由SNIs(用户网络接口)组成的传交付系统,和外部网络接入系统,ICI(独立载波接口)。每个SMDS的服务器必须在SNIS、ICIs和ISSI(内部交换系统接口)连接之间交换数据包。(见图1)

图1:SMDS网络架构

SMDS已被设计成可以支持多种更底的层级,例如ATM(AAL 3/4或5)、DQDB(见图2)。

图2:SMDS服务器架构

2.3. 实时性能要求

大多数电信系统显然有许多实时性方面的约束。对于SMDS来说主要分为时延要求和总吞吐量要求。在前一种情况下,如果一台SMDS服务器不能做到每10毫秒向它的相邻服务器发出“hello”信息的话,就可以认为这台服务器已经失效。(该通信链路必须进行复位)。后一种情况下,总吞吐量的要求总体可以由性能决定。有研究表明,高性能通信系统中的最显著的瓶颈是数据包头处理速度,系统内部数据交换速度,执行环境和处理系统和物理层之间的接口。

 数据包处理速度。在SMDS的服务器中,最显著的包头处理速度主要是不同上下文的传输(在SNI接口间流转并且进入SMDS网络的数据包),接收(从ISSI接口至SNI的数据包),交换(ISSI链接之间的数据交换)。

 运行环境,处理时间与处理器的能力成正比:执行环境是影响处理速度的主要因素。

 系统内数据交互,为了提高效率,应避免在内存之间复制数据包,一个经典的解决方案是将所有数据包储存在一个共享内存中。节点只访问并处理包头数据,不处理数据包中包含的数据。

 运算系统和物理层之间的接口,最后的瓶颈应该是运算系统和物理层之间的接口,它的吞吐量应该不受系统限制。最合理的解决方案是在不同计算机节点中创建ISS和SNI连接(见图3),每一个在SMDS网络中的节点都有它自己的操作系统和接口,并且能够与其他节点协作提供SMDS服务。

图3:用于获得并行SMDS服务的分布式网络连接

3. 面向对象的分析与设计

实施分布式SMDS的服务器方案是一项在实验室进行的以科研为导向的电信项目,使用了研究软件工程所使用到的面向对象的方法,本节主要是概述该方法的各个步骤,并且收集在设计实时分布式SMDS服务器时的各类问题。

3.1. 面向对象建模分析

对面向对象的分析的第一步是制订一个现实世界相关的准确、简洁、且易懂的模型。面向对象分析的主要目的是对问题所在区域进行建模使之可加浅显易懂,建立可行的系统。对象建模技术(OMT)是流行的面向对象分析和设计方法之一。 OMT分析模型本身扩展成三个分支:

 对象模型,通过对物理实体之间的关系进行抽象,得出现实系统的静态结构。

 动态模型,用于表达系统中的对象的时序行为。当问题域主要是电信协议时,主要的动态模型的分析工作已经完成,因为它是在协议的定义说明中明确要求必须包括的部分。

 功能模型,显示系统(尤其是输入和输出)中的对象之间的各种约束。

3.2. 高性能设计模式

3.2.1. 系统设计

设计阶段从分析阶段的输出开始,并且重心逐渐从应用领域转向计算机领域:对于大多数现实应用,系统设计的第一步是将系统拆分成许多组件。这些组件应该具有相当的独立性和弱耦合的子系统,每个子系统均有完善的接口定义。本文所设计的SMDS服务器所包含的子系统分别是ISSI的三个层次、ICI,SNI和网络管理接口(NMI)(见图2)。由于性能的限制,ISSI第一层和第二层采用了一套专门的板卡,专门负责处理底层协议(ATM,DQDB等)。无论它们的类型如何,这些板卡都向ISSI第三层提供相同的接口:这个接口,可以用一个抽象类来建模。下文将专注于核心的SS,它专用于处理SMDS之间的通信问题。

3.2.2. 当前激活对象方案

在SMDS服务器的分析模型中,正如大多数电信系统一样,许多类与有限状态机(FSM)相关联,并且描述其动态行为:它们的实例通常被称为活动对象。活动对象可以通过发送信息像非当前活动通信一样被发现,一个经典的方法是使用所谓的“实时操作系统”,并分配一个真实的进程给每个活动对象。这些进程必须通过各类工具进行妥善调度,以满足实时约束要求。

虽然概念简单、通用,但这种方法仍存在一些缺点:

 继承异常:这个简单的并行模型不能很好地与继承相溶合,因为同步的约束在上下文中难于继承。

 浪费系统资源:在一个特定的时间点,大多数进程只是等待一些事件发生。由于他们没做什么,因此他们浪费了系统的资源(堆栈空间等)。