第四章程控交换机的软件系统.docx
《第四章程控交换机的软件系统.docx》由会员分享,可在线阅读,更多相关《第四章程控交换机的软件系统.docx(44页珍藏版)》请在冰豆网上搜索。
![第四章程控交换机的软件系统.docx](https://file1.bdocx.com/fileroot1/2023-2/6/69cd6a25-bebd-40eb-af4d-1edcf021a798/69cd6a25-bebd-40eb-af4d-1edcf021a7981.gif)
第四章程控交换机的软件系统
第四章程控交换机的软件系统
4.1程控交换软件的概述
4.2运行软件的一般结构
4.3程序的级别及调度
4.4呼叫处理程序
4.1程控交换软件的概述
4.1.1程控交换软件的基本特点
程控交换软件的基本特点是:
实时性强,具有并发性,适应性强,可靠性和可维护性要求高。
1.实时性强
程控交换机是一个实时系统。
在交换机中,许多处理请求都有一定的时间要求,所谓实时处理(RealTimeProcessing)就是指当用户无论在任何时候发出处理要求时,交换机都应立即响应,受理该项要求,并在允许的时限范围内及时给予执行处理,实现用户的要求。
定期扫描
由于用户呼叫处理请求是随机的,而处理机又不可能对每一设备进行连续监视,因此,要对其所控制的设备进行周期性的监视扫描(即,定期扫描)。
多级中断
多级中断是用来按时启动实时要求较严格的程序。
队列
所谓队列就是排队,按先进先出的原则进行处理。
2.并发性和多道程序运行
在一部交换机上,往往不仅有多个用户同时发出呼叫请求,还同时有多个用户正在进行通话。
一个交换机面对众多的用户,在同一时间里会有许多用户摘机呼叫,每一呼叫都伴随着许多事情要处理,如识别用户类型,向用户送拨号音,接收和分析用户拨号号码。
1.按优先顺序依次处理
将需要处理的任务加以分类,排定处理的先后顺序。
2.多道程序同时运行
将每次的用户呼叫过程分成若干段落,每一段落称为进程(或称任务)。
处理机在处理某个用户呼叫时,完成一个任务后,并不等待外设动作,而是即刻去处理另一呼叫请求,这样就可使多个呼叫“同时”得到处理。
●群处理
所谓群处理是执行一个程序可对多个输入同时处理。
这种群处理的方法常用于用户线或中继线的扫描监视。
●多处理机
在多处理机控制的系统中,处理机之间可按负荷分担方式或功能分担方式工作。
因此许多处理机同时运行。
图4-1多个进程实例共用一个程序代码
3.可靠性要求高
程控交换机应具有很高的可靠性,即使在其硬件或软件系统本身发生故障的情况下,系统仍能保持可靠运行。
4.能方便地适应交换机的各种条件
一个程控交换机要面对大量规模不同、对交换机功能要求不同、运行环境不同的交换局。
5.软件的可维护性要求高
交换软件的另一个特点是具有相当大的维护工作量。
4.1.2数据驱动程序的特点及其结构
程控交换软件的一个基本要求是容易追加新的功能及适应不同的条件。
图4-2动作驱动程序的流程图
图4-3数据驱动程序的流程图
图4-4数据驱动程序的一般结构
4.1.3有限状态机(FSM)和有限消息机(FMM)的概念
系统的有限状态机描述是指能将系统(或进程)的状态定义为有限个状态,然后描述在每个状态下受到某个外部信号激励时系统作出的响应及状态转移的情况。
图4-5FSM结构的示意图
4.1.4在交换软件设计中应用的三种类型的程序设计语言
在程控交换机软件的开发、运行和维护阶段,一般要用到三种类型的语言:
规范描述语言(SDL)、各种高级语言和汇编语言、人机对话语言(MML)。
1.规范描述语言
规范描述语言(SDL)是原CCITT建议的一种高级语言,主要用来说明电话交换系统的行为。
(1)系统定义
∙系统名字
∙信号定义
∙信号表定义
∙信道定义
∙数据定义
∙模块定义
图4-6系统图的SDL/GR表示
(2)模块定义
模块定义包含以下项目:
▪模块名字信号定义
▪信号表定义
▪信号路由定义
▪信道到路由的连接
▪进程定义
▪数据定义
图4-7模块的SDL/GR表示
(3)进程定义
图4-8SDL/GR描述进程的主要符号
图4-9进程定义的例子
2.汇编语言和高级语言
(1)汇编语言
汇编语言是面向处理机动作过程的语言
(2)高级语言
3.人机对话语言(MML)
(1)输入信息——人机命令
(2)输出语言
4.2运行软件的一般结构
4.2.1运行软件的基本结构
程控交换机的运行软件指存放在交换机处理机系统中,对交换机的各种业务进行处理的程序和数据的集合。
图4-10运行软件结构
4.2.2局数据和用户数据
1.局数据
局数据用来描述交换机的配置及运行环境,主要包含以下内容:
∙配置数据
∙交换局的号码翻译规则
∙路由中继数据
∙No.7信令数据
∙计费数据
∙新业务提供情况
2.用户数据
用户数据用来说明用户的情况,每个用户都有其特有的用户数据。
用户数据主要包括以下内容:
▪用户电话号码、用户设备码
▪用户线类别
▪话机类别
▪用户的服务等级
▪用户对新业务的使用权及用户已登记的新业务
▪用户计费数据
4.2.3操作系统、呼叫处理程序以及维护管理程序
1.操作系统
又称为执行控制程序,是处理机硬件与应用程序间的接口,它统一管理系统中的软、硬件资源,合理组织各个作业的流程,协调处理机的动作和实现处理机之间的通信。
主要功能如下:
任务调度、存储管理、定时管理、进程之间的通信和处理机之间的通信、系统的防御和恢复。
2.呼叫处理程序
呼叫处理程序负责整个交换机所有呼叫的建立、监视与释放,并完成对各种电话新业务的处理。
呼叫处理程序由硬件接口、信令处理、电话资源管理、呼叫控制、呼叫服务和计费处理等程序组成。
呼叫处理程序主要有以下功能。
①交换状态管理
②交换资源管理
③交换业务管理
④交换负荷控制
3.维护管理系统
4.3操作系统
4.3.3程序的优先级、各类程序的特点及驱动方式
程控交换机软件的最基本特点是并发性和实时性,并发性是指在系统中存在多道被激活的作业,实时性是指系统对外界出现的事件必须在规定时间内作出响应,否则将丢失有关信息而导致呼叫处理的失败。
1.中断级
中断级程序有两个重要特点,一个是实时性要求高,在事件发生时必须立即处理;另一个是事件发生的随机性,即事件何时发生事先无法确定。
故障级程序是实时性要求最高的程序。
平时不用,一旦发生故障,就须立即执行。
其任务是识别故障源,隔离故障设备,换上备用设备,进行系统再组成,使系统尽快恢复正常状态。
2.时钟级
时钟级程序用于处理实时性要求较高的工作(按照一定周期执行)。
周期级程序是实时要求较高的程序。
周期级程序都有其固定的执行周期,每隔一定的时间就由时钟定时启动,又称为时钟级程序。
3.基本级
基本级程序的功能是对外部发现的各种事件进行处理。
基本级程序对实时性要求不太严格,有些没有周期性,有任务就执行,有些虽然有周期性,但一般周期都较长。
4.3.4时钟级程序的调度
时钟级调度程序是由时钟中断启动的。
1.表格结构
周期级程序中各个程序的执行周期不同,而对众多的周期级程序,需要用时间表来调度控制。
时间计数器是周期级中断计数器,它是根据时间表单元数设置的,如果时间表有24个单元,则计数器即由“0”开始累加到“23”后再回到“0”。
屏蔽表又称有效位。
时间表实际上是一个执行任务的调度表。
转移表是存放周期级程序和任务的起始地址,它标明了要执行的程序逻辑的存放地址。
由时间表控制启动的程序,其扫描周期并不都是4ms。
①8ms周期级中断到,读取时间计数器的值,根据其值读取时间表相应单元的内容。
②将屏蔽表的内容与该单元对应位的内容相与,其结果为“1”,即根据该位的号码,找到转移表中的相应行,而得到要执行的首地址;其结果为“0”,即不执行。
③执行该程序。
④等所有位均进行了上述处理,并执行完相应的程序以后,表明这一8ms周期中已执行完周期级程序,可以转向执行基本级程序。
⑤当计数器计到23时,即对最后一个单元进行处理。
当处理至最后一位时,将计数器清零,以便在下一个8ms周期中断到来时重新开始。
2.调度程序流程
图4-14比特型时间表
图4-15调度程序流程图
程序执行管理的基本原则有以下四条。
①基本级按顺序依次执行。
②基本级执行中可被中断插入,在被保护现场后,转去执行相应的中断处理程序。
③中断级在执行中,只允许高级别中断进入。
④基本级被时钟中断插入后的恢复处理应体现基本级中的级别次序。
基本级程序的执行管理
1.循环队列
图4.31所示为一循环队列,在队列中有队首指针、队尾指针及排队的处理要求a,b,c。
排队的单元是一定的,队首指针指的是出口地址,队尾指针指的是入口地址。
4.31循环队列
2.链形队列
链形队列是将一些位置零乱的存储表,位置不动,而将其首地址按一定顺序加以编排,链接在一队列之中。
3.双向链队
上面所述的链队实际上是单向链队。
这种链队虽然可以在中间插入或取出,但必须知道前一张表的指针内容,为此就不得不从头开始查找。
4.4系统的诊断与维护
4.4.1故障处理的一般过程
当交换机发生故障时,故障处理的一般过程有故障识别、系统再生成、恢复处理、故障告警打印、诊断测试、故障修理以及修复故障返回整机系统。
1.故障识别
各种设备配有各种检验电路,校核每次动作结果,如识别到不正常情况一般可通过故障中断报告给CPU,通过故障处理程序中的故障识别和分析程序,可以大致分析出发生了什么性质的故障和哪一个设备发生了故障。
2.系统再生成(主备用切换)
当故障识别程序找到有故障设备后,就将有故障的设备切除,换上备用设备,以进行正常的交换处理。
由故障处理程序中的“系统再组成程序”完成。
3.恢复处理(系统再启动)
故障发生后,暂停呼叫处理工作,进行故障处理。
如果故障处理时间很短,可以从呼叫处理的中断点再启动,对呼叫处理没影响。
如果故障处理时间较长,交换机内部条件(如数据和硬件设备)仍为中断时的情况,而其外界情况可能已经发生变化,例如正在拨号呼出的呼叫由于不能对其进行正常的收号扫描,会丢失拨号脉冲,若直接恢复呼叫处理,反而造成混乱,必须将这类正在进行中的呼叫强行清除。
如果是属于软件等较严重的故障,更要适当安排再使系统恢复,否则有进一步扩大故障影响的危险,为了确保交换机的正常运转,需要把被破坏的数据改回到某一时刻的起始值。
为了尽可能减少再启动对呼叫处理的影响,有的交换机根据故障的严重程度把再启动分为若干级。
以F-150中呼叫处理机CPR为例,分四级:
A级:
临时性故障,故障很轻,处理时间很短,在故障计次不超过规定次数的情况下,“再启动”可从原先断点继续执行。
A级再启动对呼叫处理没有影响(无损伤)。
B级:
连续发生几次(例如4次),则要执行B级再启动。
B级再启动对已振铃或通话的呼叫能保持,而正在处理中的呼叫要受到影响。
C级:
如果B级再启动两次未成功,就要执行B级再启动。
这时会影响振铃用户,对已通话用户无影响。
B级、C级再启动考虑到故障较严重,某些数据受破坏,须从外存调入局数据,但程序不受影响。
D级:
如果C级再启动进行四次无效,应采用D级再启动,这时要从外存调用5s前的程序和数据,系统停止呼叫工作,进行初始化。
D级再启动对已通话用户也有影响。
F-150的主处理机MPR再启动分三级:
A、B、D。
F-150的用户处理机LPR再启动分两级:
A、B
在DMSSN交换机中启动根据严重程度分三种类型:
warm热启动,cold冷启动,reload重新装载,启动对呼叫处理的影响:
Warmrestart:
通话的仍保持,没通的,正拨号的电话中断,计费在restart过程中不计费。
Coldrestar:
通话的仍保持,但呼叫数据丢失,随时可能被中断,restart过程中计费全无。
Reloadrestar:
对PS、DS数据初始化,再启动对已通话用户也有影响。
在局参数表中定义最大启动次数。
4.故障告警打印
交换机恢复正常工作后,应将故障状况通知维护人员,进行故障告警和故障打印。
5.诊断测试
虽然故障设备已被备用设备所替换,但应尽早修复故障设备,以免在故障设备修复前又发生同类故障,因没有可替换的设备而造成交换接续的中断。
6.故障修理
对于硬件设备(如电路板)的故障,可由维护人员利用测试仪表进行测试和分析,更换损坏的元器件,以便达到硬件故障修复的目的。
7.修复设备返回整机系统
故障设备修复后,可由维护人员送入指令,以便使修复设备成为可用状态,返回交换机的工作系统中去。
4.4.2故障检测与诊断
1.硬件发现故障
硬件可通过奇偶校验、动作顺序校验、工作状态校验、非法命令校验等手段发现故障。
2.软件发现故障
软件发现故障也有两种检测方式:
控制混乱识别和数据检验。
4.4.3故障排除
在故障处理中,如果识别出故障设备,可将故障设备切除,换上备用设备,这是最简单的系统再组成。
也可由人工对设备进行转换、切除和恢复工作。
在较复杂的情况下,如难以区分故障设备或出现严重故障,要用逐次置换法来不断组成系统,以形成正常工作系统并找出故障设备。
4.3.5处理机占用率计算
图4-16时钟级与基本级的执行
4.3.6基本级程序的调度
1.进程的概念
进程是操作系统中最重要、最基本的概念之一,它是随着多道程序的出现而引入的。
进程具有如下性质:
①进程包含了数据和运行于其上的程序。
②同一程序同时运行于不同数据集合上时,构成不同的进程。
③若干个进程可以是相互交往的。
④进程可以并发地执行。
2.进程的状态及其转换
等待状态:
等待某个事件的发生。
就绪状态:
等待系统分配处理机以便运行。
运行状态:
占有处理机正在运行。
每个进程在执行过程中,任意时刻当且仅当处于上述三种状态之一。
图4-17进程的状态转换
3.进程控制块
第—类:
标识信息。
用于标识一个进程,如进程名(与进程定义相对应的程序名),进程号码等。
第二类:
说明信息。
用于说明进程情况,如说明进程状态,等待原因,进程程序存放位置,进程数据存放位置等信息。
第三类:
现场信息。
用于保留进程在运行时存放在处理机中的内容,如通用寄存器,控制寄存器的内容,程序状态字等。
第四类:
资源信息。
用于说明有关该进程所占用的存储器或外设资源的记录和连接信息等。
图4-18进程的物理表征
4.进程通信
处理一个呼叫(或业务)需要多个进程配合完成,进程之间需要相互通信。
消息发送原语的功能为:
①在消息缓冲块中填上发送该消息的进程所在的处理机标识和进程标识。
②确定消息路由。
③根据已确定的消息路由发送消息。
消息等待原语的功能:
①保存现场
②将该进程排入等待队列,然后转入调度程序调度就绪队列中优先级最高的进程运行。
5.进程调度
进程调度程序的功能就是从就绪队列中挑选一个进程到处理机上运行。
(1)进程调度算法
①先来先服务方法
②时间片轮转法
③分级调度
(2)进程调度程序
图4-19进程调度程序的示意图
4.4呼叫处理程序
呼叫处理程序负责整个交换机所有呼叫的建立与释放,以及交换机各种新服务性能的建立与释放。
呼叫处理程序主要有以下功能。
①交换状态管理
②交换资源管理
③交换业务管理
④交换负荷控制
4.4.1呼叫处理的基本原理
①必须解决多个呼叫同时要求一个处理机进行处理和处理机在同一时刻只能干一件事的矛盾。
②采用什么方法把要处理的各种事情都互不影响地加以处理,而其中有些处理还必须在规定的时间内完成,即呼叫处理程序必须具有实时性。
1.用户呼出阶段
2.数字接收与分析阶段
3.通话建立阶段
4.通话阶段
5.呼叫撤销阶段
图4-17交换机中作业调度的一般流程
4.4.2呼叫处理程序的基本组成及层次结构
图4-18呼叫处理程序的分层结构
第一个层次是设备控制程序(硬件接口程序),它们是终端硬件设备与信令程序、呼叫控制程序之间的接口软件。
处于第二个层次的软件主要是信令处理程序。
呼叫处理程序的基本结构如图4-19所示。
图4-19呼叫处理程序的基本结构
4.4.3呼叫处理中用到的数据
1.暂时性数据
(1)呼叫控制块
(2)设备表
(3)资源状态表
图4-20呼叫控制块结构
2.半固定数据
(1)用户数据
用户数据描述了用户的全部信息,每一个用户都有自己的用户数据。
用户数据主要包括以下内容:
用户电话号码及设备码;
用户使用状况;
用户线类别(如普通、投币、用户交换机等);
用户发话等级;
用户话机类型;
新业务使用情况;
计费类别。
图4-21用户数据结构
2)局数据
局数据主要有数字分析表、路由和中继数据、计费数据等。
①数字分析表
前缀分析表
地址翻译表
②路由、中继数据
③计费数据
4.4.4信令处理程序
4.2.2输入处理
输入处理的任务是及时发现新的处理要求,并对用户线、中继线的状态进行监视、检测和识别,然后将其放在队列中或相应的存储区,以便由其他程序分析处理。
一、用户线扫描程序
用户线扫描程序是用来对用户线的状态进行检测并及时发现用户线的状态变化。
1.用户摘机识别
用户摘机识别是找出状态从“1”变为“0”的用户。
由于处理机要监视的用户数量很大,为了提高效率,多采用群处理的方法。
图4.8所示为用户线扫描示意图,图中8个用户为一组。
二、脉冲号码扫描程序
脉冲号码扫描程序由三部分程序组成:
脉冲识别、脉冲计数和位间隔识别及号码存储。
1.脉冲识别
脉冲识别是要识别脉冲串中的每一个脉冲,这就要求脉冲识别的周期必须小于最小脉冲的持续时间或脉冲的间隔时间。
2.脉冲计数
脉冲识别的同时可以对脉冲计数。
计数是在用户存储器内的一个存储区中进行的。
3.位间隔识别及号码存储
在识别用户所拨号码时,除了要识别脉冲的个数,还要识别两串脉冲之间的间隔,这就是位间隔识别。
在两位号码之间的间隔称为“位间隔”,位间隔应大于300ms。
三、双音频号码扫描程序
1.双音频话机拨号特点
双音频话机拨号是按号盘的数字键,每按一个数字键就送出两个音频信号,其中一个是高频组中的信号,另一个是低频组中的信号。
2.双音频话机收号方法
程控数字交换机接收双音频号码信息是经用户电路的A/D变换后,通过用户级、选组级送入双音频收号器。
四、中继线扫描程序
中继线扫描程序主要是用于监视中继线上的呼叫状态,以便控制接续的进行。
中继线上的呼叫状态信息是采用线路信号方式传递的。
在中继线上只有占用、应答、反向拆线及正向拆线等信号,故一般采用结构简单的直流信号。
因此,线路信号的识别方法与用户线扫描的方法相同。
1.模拟用户线信令处理程序
(1)用户摘、挂机扫描程序
图4-22扫描程序流程图
(2)拨号数字的接收
图4-23双音多频收号器的接口电路
图4-24双音多频接收程序流程图
(3)模拟用户线处理进程
图4-25用户线存储器的数据结构
∙状态信息:
记录用户当时的状态。
∙记发器号码:
在收号阶段,将为用户分配相应的收号器,该处记录其号码,以便在收号完毕后归还。
∙号码存储区指针:
在收号阶段,用户线管理程序要申请一个空闲的存储块,用来存储接收到的号码,此处用来存放指向号码存储区的指针。
∙信令分配信息:
用来记录对该用户线的驱动信息。
呼叫控制块号码:
用来记录该用户线使用的呼叫控制块号码,用户线处理进程向呼叫控制进程发送的消息中,应包括与该用户线对应的呼叫控制块的号码,以便任务调度程序将此消息发送给与此用户线对应的呼叫控制进程。
图4-26简化SDL/GR图
2.中继线路信令处理程序
(1)局间数字型线路信令
(2)出中继数字线路信令处理程序
①数字中继线路信令的扫描与驱动
图4-27扫描存储器(SCN)和上次扫描值存储器(LSCN)的结构
图4-28对30路中继的线路信令进行扫描的程序流程图
②数字线路信令的驱动
③出中继数字线路信令处理进程
图4-29出中继数字线路信令处理进程的简化SDL图
3.多频互控信令的发送和接收
4.No.7信令系统在程控交换机上的实现
(1)实施No.7信令系统时软件和硬件的功能划分
No.7信令系统的功能有的由硬件实现,有的由软件实现。
软、硬件的功能划分如图4-30所示。
图4-30No.7信令系统的软、硬件功能划分
图4-31第二级软、硬件功能划分
第三级和第四级的功能由软件实现。
(2)No.7信令在S1240系统上的实现
图4-32No.7四级功能在S1240系统中的分布示意图
No.7信令的第一级功能是数字中继模块(DTM)和公共信道信号模块(CCSM)之间通过数字交换网络DSN中的半永久通路相连的一个时隙,即一个64kbit/s的数据通道。
第二级信号链路功能由CCMS信号终端中的硬件和软件实现。
第三级的消息处理功能由CCSM中的软件实现。
信号网管理功能由SACEN7中的软件实现。
第四级电话用户(TUP)功能由驻存在DTM中的软件实现。
①No.7信令模块CCSM
图4-33CCSM硬件结构图
②S1240的No.7信令系统软件
(3)No.7信令方式在NEAX61系统上的实现
•图4-34NEAX61中No.7信令系统的结构
•图4-34NEAX61中No.7信令系统的结构
No.7的第一级功能由数字中继接口(DTI)、时分数字网(TDNW)以及No.7信令接口(N7SI)完成。
No.7的第二功能级的功能由公共信道信号控制器(CCSC)完成。
No.7的第三级和第四级功能由驻存在专用信号处理机(CCSP)和呼叫处理机(CLP)及维护管理处理机(OMP)中的软件来完成。
图4-35NEAX61系统中No.7软件模块结构
4.4.5呼叫控制程序
呼叫控制程序又叫做呼叫状态管理程序。
在“收号”状态可能收到的消息有“挂机”、“久不拨号”或“预译号码”。
图4-36呼叫控制进程简化SDL图
(1)
图4-37呼叫控制进程简化SDL图
(2)
图4-38呼叫控制进程出局呼叫时从数字分析后至出局通话状态时的简化SDL图
4.4.6分析程序和资源管理程序
1.分析的基本方法
一种方法是表格展开法。
图4-39表格展开法示例
图4-40采用对键法时表格的数据结构
2.去话分析
去话分析的主要任务是分析主叫用户的用户数据,以决定下一步的任务和状态。
1.用户数据
用户数据是去话分析的主要信息来源,用户数据主要包括以下内容。
①呼叫要求类别:
一般呼叫、模拟呼叫、拍叉簧呼叫。
②端子类别:
空端子、使用状态。
③线路类别:
单线电话、同线电话。
④运用类别:
一般用户、来话专用、去话禁止。
⑤话机类别:
号盘话机、按钮话机(双音频话机)。
⑥计费种类:
定期或立即计费、家用计次表、计费打印等。
⑦出局类别:
允许本区内呼叫、允许市内呼叫、允许国内长途呼叫、允许国际呼叫。
⑧服务类别:
呼叫转移、呼叫等待、三方通话、叫醒、免打扰、恶意呼叫追踪等服务性能。
2.分析过程
去话分析