交换实验.docx
- 文档编号:29861983
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:22
- 大小:4.17MB
交换实验.docx
《交换实验.docx》由会员分享,可在线阅读,更多相关《交换实验.docx(22页珍藏版)》请在冰豆网上搜索。
交换实验
基础实验一 时间表调度实验(必做实验)
一.实验目的:
驱动交换网络实验用来考查学生对时间表调度原理的掌握情况。
二.实验原理及设计:
在程控数字交换的体系结构中,周期级程序(例如摘挂机检测程序、脉冲识别程序、位间隔识别程序)是由时间表调度实现的。
所谓时间表调度,是指每经过交换系统的最短有效时间(这通常是指各周期性程序周期的最大公约数),都会检查调度表的调度要求,如果某个程序在这时需要执行,则调度程序开始执行它。
在我们设计的时间表调度实验中,这个调度表的调度是静态的。
所谓静态,是指我们的调度表是在系统初始化的时候就建立起来的,在系统运行的情况下不再改动。
实验要求的就是这个调度表的初始化。
这个调度表如下:
时间(10ms) \任务
0:
摘挂机检测任务
1:
脉冲检测任务
2:
位间隔检测任务
0
0/1
0/1
0/1
1
0/1
0/1
0/1
.....
....
.....
18
0/1
0/1
0/1
19
0/1
0/1
0/1
我们这个交换系统提供了三个周期性调度程度(摘挂机检测程序、脉冲识别程序和位间隔识别程序),它们的调用周期分别为200ms、10ms和100ms,所以我们系统的最小调度时间为10ms。
如图所示,每隔10ms,我们就会检查这个表的一行,如果该行上某一列为1,我们就执列所对应的任务,如果为0,就什么都不做。
每当执行到这个表的最后一行,调度任务会返回第一行循环执行。
而你所要做的就是按照你的理解来填写这个调度表。
三.实验主要数据结构:
函数功能:
完成调度表的初始化;
函数原型:
initSchTable(intScheduleTable[SchTabLen][SchTabWdh]);
其中SchTalLen和SchTabWdh为在bconstant.h中的宏定义:
#defineSchTabLen20 //代表这个调度表为20行(相邻行之间的时间间隔为10ms);
#defineSchTabWdh3 //代表三个周期性调度任务——0:
摘挂机检测任务;1:
脉冲检测任务;2:
位间隔检测任务;
四.实验效果检验:
当调度表初始化正确时,能够进行正常的通话;如果初始化不正确,可能会造成周期性程序的不正常调用,例如位间隔调度的延迟会造成识别位间隔的延误甚至丢失。
注:
由于为循环程序,所以调度表的初始化方案不唯一。
基础实验二 摘挂机检测实验(必做实验)
一.实验目的:
摘挂机检测实验用来考查学生对摘挂机检测原理的掌握情况。
二.实验原理及设计:
设用户在挂机状态时扫描输出为“0”,用户在摘机状态时扫描输出为“1”,摘挂机扫描程序的执行周期为200ms,那么摘机识别,就是在200ms的周期性扫描中找到从“0”到“1”的变化点,挂机识别就是在200ms的周期性扫描中找到从“1”到“0”的变化点,该原理的示意图如下所示:
在我们的实验中,我们把前200ms的线路状态保存以备这次可以读取,同时读出这次的线路状态,把前200ms的线路状态取反与这次的线路状态相与,如果为1,就说明检测到摘机消息了。
同理,我们把这次的线路状态取反再与前200ms的线路状态相与,如果为1就说明检测到挂机消息了,然后把摘挂机信号作为事件放入摘挂机队列中。
三.实验主要数据结构:
函数功能为:
检测到摘、挂机事件,并把该事件放入到摘挂机事件队列中。
函数原型:
voidscanfor200(intlinestate200[LINEMAX],intlinestate[LINEMAX],UpOnnode*head1,UpOnnode*end1);其中LINEMAX为线路总数,是定义在"bconstant.h"中的一个宏,linestate200[LINEMAX]为已保存的200ms前线路状态,linestate[LINEMAX]为当前的线路状态,head1,end1为摘挂机队列的首尾指针,该队列已经在主程序中进行了初始化。
我们所要做的就是把检测到的摘挂机事件以摘挂机队列节点的形式插入到摘挂机事件队列中。
数据结构说明:
头文件:
"bconstant.h";(以下的数据结构都已在该文件中定义)
LINEMAX :
最大线路数;
intlinestate200[LINEMAX],linestate[LINEMAX]:
线路从0开始编号;状态:
1:
有电流,0无电流;
enumUporOn{ehandup,ehandon}:
为摘挂机区别符:
ehandup表示摘机,ehandon表示挂机;
structUpOnnode //摘挂机队列节点结构
{
UporOnphonestate; //摘挂机区别符;
intlinenum; //线路号(从0开始);
structUpOnnode*next; //指向下一节点的指针;
};
注意事项:
1.我们编写的模块是基础实验部分预加载的本局交换系统的一个模块而已,在系统中head1头指针和end1尾指针已经完成初始化。
为方便起见,我们的摘挂机事件队列是一个包含头节点的单向链表,并且头指针指向该头节点,尾指针在初始化时也指向了该节点。
所以在我们的函数编写中应保证头指针始终指向该头节点上、尾指针指向摘挂机事件队列的最末一个节点。
2.注意把这次扫描的线路状态值保存在前200ms扫描线路状态数组中,以便主程周期调用。
四.实验主体流程图:
基础实验六 驱动交换网络实验(必做实验)
一.实验目的:
驱动交换网络实验用来考查学生对T接线器时隙交换原理的掌握情况。
二.实验原理及设计:
在数字交换机中采用的是数字交换网络,数字交换网络的主要特点是它能够将从数字传输设备进来的数字信号直接进行交换,而不需要数/模和模/数转换。
在数字交换中,常见的是T接线器和S接线器。
由于基础实验中模拟的交换网络为T接线器,所以这里将只对T接线器进行简单的介绍。
T接线器有输出控制方式和输入控制方式两种,不管是哪一种方式,都由话音存储器和控制存储器两部分组成。
在这里介绍一下输出控制方式,如果需要了解输入控制方式,请参阅有关书籍。
设输入话音信号在TS50上,要求经T接线器以后交换至TS450上去,然后输出到下一级。
CPU根据这一要求,通过软件在控制存储器的450号单元写入“50”。
这个写入是由CPU控制进行的,因此把它叫做“控制写入”。
控制存储器的读出由定时脉冲控制,按照时隙号读出相应单元内容。
话音存储器的工作方式正好和控制存储器的方式相反,即“顺序写入,控制读出”。
也就是说,由定时脉冲控制,按顺序将不同的话音信号写入相应的单元中去。
写入的单元号和时隙号一一对应。
而读出时则要根据控制存储器的控制信息而进行。
由于向话音存储器输入话音信号不受CPU控制,而输出话音信号受到由CPU控制的控制器的控制,因此称为“输出控制”方式。
在我们的例子中,话音的输入时隙号为50,在定时脉冲控制下就可写入到50号单元中。
如前所述,CPU在控制存储器中的450号单元已写入了内容“50”。
在定时脉冲控制下,在TS450这一时间,从控制存储器的地址450中读出内容为“50”,把它作为话音存储器读出地址,立即读出话音存储器的50号单元。
这正好是原来在50号时隙写入的话音信号内容。
因此在话音信号50号单元读出时已经是TS450了,即已把话音信号从TS50交换到TS450,实现了时隙交换。
在我们的驱动交换网络实验中,采用的是单T接线器。
因为在这个模拟实验中,并没有任何的数据进行通信,所以在设计中并不存在话音存储器而只存在控制存储器。
在建立交换网络时,要求学生在通信的两个时隙对应的控制存储器相应位置写入对方的时隙号,在拆除交换网络时,要求学生在通信的两个时隙对应的控制存储器相应位置清“0”。
在显示交换网络建立或者拆除时,外部程序将会去查这个控制存储器来“建立”连接或者“拆除”连接,用这种方法就可以检测学生编码的正确性。
三.实验主要数据结构:
函数功能:
完成通信双方通信时隙的确定和修改。
函数原型:
voidconnect_network(inttimeslice_tnet[TIMESLICEMAX],inttimeslice1,inttimeslice2,inttag);
其中TIMESLICEMAX为一个宏定义,定义在"bconstant.h"头文件中,表示系统可用的最大时隙数,timeslice_tnet为一个数组,代表了交换机内的一个控存(控制存储器),下标值(从0开始)相当于一个时隙索引,与下标值对应的数组值为与该时隙通话的时隙,timeslice1和timeslice2为欲建立或者拆除连接的两个时隙。
tag为一个标志位,1表示建立网络,0表示拆除网络。
四.实验效果检验:
当建立连接成功时,在Flash界面可以看到通信双方“闪烁”的线路连接;
当拆除连接成功时,在Flash界面可以看到通信双方“闪烁”的线路消失。
分组实验一 分组交换演示实验(必做实验)
一.实验目的:
该部分实验动态演示了分组传输过程,包括X.25虚链路的建立、分组传输和X.25虚链路的拆除;主要体现了分组传输中面向连接的工作方式。
二.实验原理以及实验设计:
X.25建议是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)制定的关于数据终端设备(DTE)和数据电路终接设备(DCE)之间的接口规程。
X.25标准的思路是为用户(DTE)和分组交换网络(DCE)之间建立对话和交换数据提供一些共同的规程,这些规程包括数据传输通路的建立、保持和释放,数据传输的差错控制和流量控制,防止网络发生阻塞,确保用户数据通过网络的安全,向用户提供尽可能多而且方便的服务。
X.25建议为分组交换网定义了开放系统互连(OSI)模型的下3层,这三层分别是:
物理层,链路层,分组层。
与OSI模型的下三层一一对应,只是OSI的网络层(第三层)改称分组层,其功能是一致的。
X.25的三层协议为DTE——DTE之间的高层通信协议提供了可靠的基础。
X.25的分组层在X.25接口为每个用户呼叫提供一个逻辑信道(所谓的“呼叫”是指一次通信过程)。
为每个用户的呼叫连接提供有效的分组传输,包括顺序编号,分组的确认和流量控制过程。
提供交换虚电路(SVC)和永久虚电路(PVC)的连接。
提供建立和清除交换虚电路的方法。
交换虚电路建立过程如下:
三.实验演示流程
实验界面如图所示:
DTE终端为DTE1~DTE2,分组交换机为Switcher_A~Switcher_C,网络拓扑如图所示。
实验演示分三个阶段虚电路连接建立阶段、数据传送阶段和连接拆除阶段。
1.连接建立阶段:
进入实验界面后,点击开始按钮,进入连接建立阶段。
首先发起连接的终端发送“呼叫请求”(CallRequest)分组,该“呼叫请求”分组包含可供分配的高端的LCN和被叫的DTE地址,启动一次呼叫。
该分组发送到本地DCE,由DCE将该分组转换成网络规程格式,而且通过网络路由(交换)到远端DCE,由远端DCE将网络规程格式的呼叫请求分组转换为“入呼叫”(IncomingCall)分组,并发送给被叫的DTE,该分组包含了可供分配的低端的LCN。
被叫DTE通过发送“呼叫接受”(Callaccepted)分组表示同意建立虚电路。
远端DCE接收到“呼叫接受”分组之后,通过网络规程传送到本地DCE,本地DCE发送“呼叫连接”(Callconnected)分组到主叫DTE。
主叫DTE接收到“呼叫连接”分组之后,表示主叫DTE和被叫DTE之间的虚呼叫已建立,可以进入数据传输阶段。
DTE和DCE对应的逻辑信道就进入数据传输状态。
2.数据传送阶段:
链路连接建立完成以后,主叫数据的终端向被叫终端发送数据。
分组交换机根据数据分组的LCN值,按照路由表转发分组。
被叫终端接到数据后发送数据证实分组。
3.连接拆除阶段:
通信完毕后,在虚呼叫任何一端的DTE都能够清除呼叫,而且呼叫也可以由网络清除,我们这里以主叫方发送释放请求说明链路的拆除过程。
呼叫清除的过程实验演示。
主叫DTE发“清除请求”(ClearRequest)分组,该分组通过网络到达远端DCE,远端DCE发“清除指示”(ClearIndication)分组到被叫DTE,被叫DTE用“清除证实”(Clearconform)分组予以响应。
该“证实”传到本地DCE,本地DCE再发送“清除证实”到主叫DTE。
完成清除规程之后,虚呼叫所占用的所有逻辑信道都成为“准备好”状态。
分组实验二 永久虚电路建立演示实验(必做实验)
一.实验目的:
本部分实验将模拟分组交换网中永久虚电路的实现。
它根据X.25建议的分组层提供永久虚电路连接的原理,让学生动手在分组交换网中建立一条永久的虚连接。
通过这个实验,学生可以进一步了解分组交换网所提供的面向连接的服务,以及分组交换网中的分组交换节点对网中传输的分组按路由表转发的原理。
二.实验过程:
实验界面如图所示:
进入实验时,分组交换机A、B、C附近对应有可以填充的空路由表,DTE1终端附近可以填充连接的目的地址和DTE1到分组交换节点A端的逻辑信道号。
实验要求建立DTE1到DTE2的交换虚电路连接,学生可选择DTE1――A――B――C――DTE2或者DTE1――A――C――DTE2两条路由,并根据所选择路由填充路由表。
路由表的填充尾端到端的一次填充。
每个节点对路由表的范围都有限制,所填的路由值超出限制范围时,报错,并允许重新填写。
例如,所有链路的逻辑信道号的范围时1——7,超出此范围应报错;DTE2的地址为“DTE2”,分组交换节点A、B和C所连接的端口号如图所示。
填入的路由表正确时,进入数据传送阶段的演示过程,否则报错,学生重新填写。
ATM实验一 ATM交换演示实验(必做实验)
一.实验目的:
该部分实验动态演示了ATM的传输过程,包括ATM链路的建立、ATM信元传输和ATM链路的拆除;主要体现了ATM采用面向连接的工作方以及采用和固定长度信元的特点。
二.实验原理及设计:
ATM是面向连接的网络,在端到端的通信前必须建立连接。
ATM网络通常有永久虚电路(PVC)和交换虚电路(SVC)两种方式。
永久虚连接(PVC)是通过预定或预分配的方法建立的连接。
交换虚连接是当用户需要使用网络资源时,才由网络动态分配,当呼叫结束时,SVC会被拆除,并可以分配给另一个用户。
ATM网络的优点是能够根据需要动态建立与释放连接,用户可以根据不同应用的需要,在同一时间内建立多条SVC,支持多种服务,并允许较多的用户有效的使用网络资源。
这里我们主要演示ATM的SVC建立、传输和释放过程。
SVC的建立、管理与释放过程就是ATM信令的交互过程。
ATM网络有用户终端、专用ATM交换机和公用ATM交换机构成,SVC的实现涉及终端与交换机、交换机与交换机之间的信令。
ATM信令主要分为UNI(用户-网络接口)信令和NNI(网络-网络接口)信令。
1.UNI信令
ATMUNI信令是在ATM网络中用户终端和网络之间进行连接的建立、释放和维护的协议。
ITUT-T规定了两种UNI呼叫连接控制:
点到点的呼叫连接控制和点到多点的呼叫连接控制。
点到点的呼叫连接控制涉及到3个实体:
主机方(用户终端)、网络侧被叫方(用户终端)。
其一个点到点的呼叫连接的建立和释放过程如下图所示:
2.NNI信令
ATM网络局间信令采用网络节点接口(NNI)信令,NNI信令是基于现有的No.7信令的ISDN用户部分(ISUP描述和定义的,是ISDNNNI信令ISUP的扩充与增强。
将ATM的NNI信令称为宽带综合业务数字网用户部分(B-ISUP)。
ITUT-T建议Q.2761~Q.2764描述了NNI信令。
下图所示为一个点到点的呼叫建立和拆除过程中的NNI信令操作。
三.实验演示流程
实验界面如图所示:
ATM终端为ATM_A~ATM_E,ATM交换机为Switcher_A~Switcher_E,网络拓扑如图所示。
该实验提供三种连接方式,分别是ATM_A——Switcher_A——Switcher_C——Switcher_E——ATM_C、ATM_A——Switcher_A——Switcher_B——Switcher_D——Switcher_C——Switcher_E——ATM_D和ATM_A——Switcher_A——Switcher_B——Switcher_D——ATM_E。
ATM交换机端口标号在被鼠标选中时自动弹出。
实验演示分三个阶段ATM连接建立阶段、数据传送阶段和连接拆除阶段。
1.连接建立阶段:
进入实验界面后,点击开始按钮,然后按照提示,选择你想要建立连接的终端,进入连接建立阶段。
首先发起连接的终端发送连接建立(SETUP)消息,启动一次呼叫。
主叫端局接到SETUP消息后,向主叫方发送呼叫处理(CALLPROCEEDING)消息作为对SETUP消息的证实,该消息中包含网络侧分配给主叫的VPI、VCI值;向网络侧发送IAM消息。
中间交换节点接收到IAM消息后,返回IAA作为确认,同时向被叫端局发送IAM消息;被叫端局接收到IAM消息后,同样返回IAA消息作为确认,同时向被叫终端发送SETUP消息。
被叫用户使用呼叫处理(CALLPROCEEDING)表示被叫端正在处理来话呼叫,接着传送提醒(Alerting)消息,表示被叫终端正在提醒被叫用户有呼入。
被叫端局收到被叫用户的通知消息后,向中间局发送地址收全消息ACM,中间端局将该消息转发给主叫端局。
被叫用户最后发送接受呼叫(Connect)消息,被叫端局发送ANM消息,将呼叫建立消息传送给相应的节点。
主叫端局接到ACM消息后向主叫用户回送提醒(Alerting)消息以通知主叫用户;接到ANM消息后通过连接消息(Connect)通知主叫用户进入连接阶段,主叫用户返回连接证实(CONNECTACK)消息,进入信息传送阶段。
2.数据传送阶段:
链路连接建立完成以后,系统向用户提示连接建立完成,用户点击已经建立连接的终端,进入数据传输阶段。
首先在发送数据的终端演示ATM数据从用户层到ATM适配层再到ATM层,最后封装成53个比特的ATM信元的过程。
ATM交换机根据ATM信元的信头所带的VPI和VCI值,按照路由表转发信元。
这里动态演示了ATM信元信头的替换过程。
在数据接收终端,这里演示了ATM信元经过由底层向高层的拆分合并,最后得到用户数据的过程。
3.连接拆除阶段:
通信完毕后,主被叫用户都可发送连接拆除请求,我们这里以主叫方发送释放请求说明链路的拆除过程。
首先ATM主叫方发送释放消息(RELEASE)消息。
主叫端局回送释放结束(RELEASECOMPLETE)消息确认网络侧完成释放操作;然后向中间端局发送释放消息(REL),请求释放连接,中间端局接到返回释放证实(RLC)作为响应并将此消息往下传送,同时拆除请求释放连接的链路。
ATM网络的拆线过程是在传送REL消息的同时逐段释放链路。
被叫端局接到释放请求消息(REL)后,向被叫用户发送释放消息(RELEASE),被叫用户回送释放完毕消息(RELEASECOMPLETE)确认释放消息(RELEASE)。
释放网络到被叫端局的连接。
整个通信过程结束。
ATM实验二 ATM路由表查询实验(必做实验)
一.实验目的:
该部分实验是让学生理解ATM交换机根据路由表转发ATM信元的过程。
二.实验原理以及实验设计:
ATM是面向连接的网络,在端到端的通信前必须建立连接。
ATM连接建立以后,在ATM交换节点保存着ATM连接信息的路由表。
ATM交换实际上完成ATM信元的选路、信头翻译与排队的3个基本功能。
选路就是选择物理端口的过程,即从某个入线端口交 换到某个出线端口的过程。
信头翻译是指将信元的信头值(入VPI/VCI)变换为输出信头值(出VPI/VCI)的过程。
信头翻译与选路功能合作共同完成ATM交换。
信头翻译和选路功能的实现是根据翻译表进行的,这里翻译表就是ATM连接建立后保存在ATM交换节点的路由表。
这里我们设计了一个查询路由表的实验。
三.实验主要数据结构:
函数功能:
在一个给定的路由表中,设计一个根据入端口、入VPI和入VCI查询出端口、出VPI和出VCI的函数。
函数原型:
#include "aconstant.h"
extern"C" _declspec(dllexport)intAtm_switch(intin_port,intin_vpi,intin_vci,RoutTableTypeItem RoutTable[])
{
}
主要数据结构说明:
头文件"aconstant.h"信息
#defineMax_Rout_Line 5//每个路由表最大的表项数。
structRoutTableTypeItem
{
int in_port;
int in_vpi;
int in_vci;
int out_port;
int out_vpi;
int out_vci;
};//每一个表项记录入出路由信息
函数参数说明
intin_port,入端口
intin_vpi,入VPI
intin_vci,入VCI
RoutTableTypeItem RoutTable[]路由表
函数要求,根据参数提供的信息,在给定的路由表中查询出端口和出VPI/VCI,返回该项信息所在路由表数组的下标,若找不到则返回-1。
MPLS实验一MPLS演示实验(必做实验)
一.实验目的:
在这一实验中,主要通过不同角度的演示,让学生熟悉和了解MPLS交换技术的基本原理。
二.演示过程:
实验界面如图所示:
终端主机为Local_hostA1和RemoteHost_B1。
路由器为:
入口LSR_A,核心LSR_B、LSR_C、LSR_D,以及出口LSR_E。
网络拓扑结构如图所示。
右边是路由表,左下方是标记转发表。
鼠标放在各路由器上时就会显示各端口号。
实验演示分为三个阶段:
建立连接阶段、数据传输阶段和拆除连接阶段。
1.建立连接阶段:
进入实验界面后,点击开始按钮,进入建立连接阶段。
在LDP协议控制下,进行MPLS节
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 交换 实验