分组交换系统的仿真与设计_第1页
分组交换系统的仿真与设计_第2页
分组交换系统的仿真与设计_第3页
分组交换系统的仿真与设计_第4页
分组交换系统的仿真与设计_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 目 录引言3第一章 分组交换的基本原理41.1分组传送方式41.2 分组的形成41.3分组头的组成41.4虚电路的建立、连接和拆除51.5数据报方式61.6 X.25建议7第二章 仿真软件的介绍82.1仿真软件设计思想82.2仿真软件的安装82.3仿真软件使用说明10第三章 程序设计代码133.1程序总代码133.2虚电路建立函数143.3虚电路拆除函数153.4分组转发函数15第四章 软件的仿真结果图17第五章 心得与体会20引言随着微电子技术、计算机技术的飞速发展,交换技术得到了空前的发展。从电话交换一直到当今数据交换、综合业务数字交换,交换技术经历了人工交换到自动交换的过程。分组交换技

2、术是在计算机技术发展到一定程度,人们除了打电话直接沟通,通过计算机和终端实现计算机与计算机之间的通信,在传输线路质量不高、网络技术手段还较单一的情况下,应运而生的一种交换技术。分组交换在商业中的应用非常广泛。如银行系统在线式信用卡(POS机)的验证。由于分组交换提供差错控制的功能,保证了数据在网络中传输的可靠性。首先,各大商场内部形成局域网,网上的服务器提供卡的管理作用,用户刷卡后,通过服务器上的X .25分组端口或路由器设备连到商业增殖网,它与金卡网络结算中心通过数字专线连接。商业增殖网主要完成来自各大商场的数据线路汇接及对商场销售情况的统计等。结算中心又同各大银行的主机系统连接,实现对信用

3、卡的验证和信用卡的消费。分组交换网的利用率高,传输质量好,能同时多路通信的特点,因此它的经济性能也较好。在一些全国性的集团公司中,总公司把指示下达给全国各地分公司甚至国外的机构,利用分组交换就非常经济。中远集团在中国各地的分支机构在本地形成局域网络,通过路由器连到分组交换网,与海关、EDI中心等互通信息。它的主机系统也通过分组交换网实行全程连网,传送定舱资料、货运情况、EDI报文等,也可远程登录至香港,与海外沟通信息。中国公用分组交换网的骨干网及各地的本地网组建至今,网络的规模比原来扩大了几倍至几十倍,并占据了一块稳定的数据通信市场。分组交换技术比较适用于终端到主机的交互式通信、交易处理,需要

4、进行协议转换的场合,跨国通信,要求高度安全的场合和传输基础设施质量不高的地区等。尽管受到了宽带网络技术的冲击,但鉴于中国通信基础设施比较薄弱,分组交换业务在今后较长一段时间内仍将发挥一定的作用。随着交换设备的更新换代,更快的交换机处理器的出现,意味着能够在更高速率下实现分组交换的传统优点。分组交换的协议转换功能和控制功能等优势,使高速传送数据的新一代分组交换技术在商业、民航、石油系统大有可为。通过挖掘潜力,找准市场切入点,抓住商机,来更好地发挥分组网络的优势。因此,对分组交换的研究,是十分有必要的。第一章 分组交换的基本原理1.1分组传送方式 在分组交换中,分组传送方式采用的是统计时分复用方式

5、(STDM),具有动态分配带宽和用标记区别数据所属用户的特点,提高了线路资源的利用率,并可以很好的支持突发性业务。12122313用户标识用户数据1.2 分组的形成分组(packet)是由用户数据和分组头组成的。分组的用户数据部分的长度是有限制的。如果来自数据终端的用户数据报文的长度超过了分组的用户数据部分的最大长度,则需要将该报文拆分成若干个数据段,并在每个数据段前加上分组偷,形成分组。1.3分组头的组成分组头中主要包含逻辑信道号、分组的序号及其它的控制信息。分组传送方式采用的是统计复用方式,在同一个物理信道上可以同时传送属于多个不同通信的分组,这些用户终端好像是分别占用了不同的子信道进行数

6、据的传送,即同一个通信的分组构成了一个子信道,当然这些子信道是逻辑的,因而我们称之为逻辑子信道。逻辑信道号(LCNLogic Channel Number):用来标识每一个逻辑子信道,进而区别出分组是属于哪个通信的。分组的序号:主要是用来标识该分组在原来的数据报文中的位置,以便于接收端能够将接收到的分组还原为原来完整的报文。1.4虚电路的建立、连接和拆除当主叫DTE想要建立虚呼叫时,它发送“呼叫请求”分组,该“呼叫请求”分组包含可供分配的高端的LCN和被叫的DTE地址。该分组发送到本地DCE,由DCE将该分组转换成网络规程格式,而且通过网络路由(交换)到远端DCE,由远端DCE将网络规程格式的

7、呼叫请求分组转换为“入呼叫”分组,并发送给被叫的DTE,该分组包含了可供分配的低端的LCN。交换虚电路建立过程 被叫DTE通过发送“呼叫接受”分组表示同意建立虚电路。远端DCE接收到“呼叫接受”分组之后,通过网络规程传送到本地DCE,本地DCE发送“呼叫连接”分组到主叫DTE。主叫DTE接收到“呼叫连接”分组之后,表示主叫DTE和被叫 DTE之间的虚呼叫已建立,可以进入数据传输阶段。DTE和DCE对应的逻辑信道就进入数据传输状态。在虚呼叫任何一端的DTE都能够清除呼叫,而且呼叫也可以由网络清除。呼叫清除的过程如图所示。主叫DTE发“清除请求”分组,该分组通过网络到达远端DCE,远端DCE发“清

8、除指示”分组到被叫DTE,被叫DTE用“清除证实”分组予以响应。该“证实”传到本地DCE,本地DCE再发送“清除证实”到主叫DTE。完成清除规程之后,虚呼叫所占用的所有逻辑信道都成为“准备好”状态。交换虚电路拆除过程1.5数据报方式 在这种方式中,每个分组按一定格式附加源与目的地址、分组编号、分组起始、结束标志、差错校验等信息,以分组形式在网络中传输。网络只是尽力地将分组交付给目的主机,但不保证所传送的分组不丢失,也不保证分组能够按发送的顺序到达接收端。所以网络提供的服务是不可靠的,也不保证服务质量。数据报方式一般适用于较短的单个分组的报文。其优点是传输延时小,当某节点发生故障时不会影响后续分

9、组的传输。缺点是每个分组附加的控制信息多,增加了传输信息的长度和处理时间,增大了额外开销。1.6 X.25建议X.25建议是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)制定的关于数据终端设备(DTE)和数据电路终接设备(DCE)之间的接口规程。X.25标准的思路是为用户(DTE)和分组交换网络(DCE)之间建立对话和交换数据提供一些共同的规程,这些规程包括数据传输通路的建立、保持和释放,数据传输的差错控制和流量控制,防止网络发生阻塞,确保用户数据通过网络的安全,向用户提供尽可能多而且方便的服务。X.25建议为分组交换网定义了开放系统互连(OSI)模型的下3层,这三层分别是:物

10、理层,链路层,分组层。与OSI模型的下三层一一对应,只是OSI的网络层(第三层)改称分组层,其功能是一致的。X.25的三层协议为DTEDTE之间的高层通信协议提供了可靠的基础。X.25的分组层在X.25接口为每个用户呼叫提供一个逻辑信道(所谓的“呼叫”是指一次通信过程)。为每个用户的呼叫连接提供有效的分组传输,包括顺序编号,分组的确认和流量控制过程。提供交换虚电路(SVC)和永久虚电路(PVC)的连接。提供建立和清除交换虚电路的方法。 第二章 仿真软件的介绍2.1仿真软件设计思想该实验系统的基本思想是这样的:向学生提供仿真的程控数字电话交换机、分组交换机、ATM交换机、MPLS交换机,这些“交

11、换机”能完成跟实际交换系统一样的各种功能。在这里所谓“仿真”是指交换机的所有硬件动作均由软件模拟完成。将实验软件系统装在微机上,学生通过对微机键盘的操作,即完成一系列诸如摘机、拨号、挂机等动作,微机屏幕显示上述各个过程及整个交换机中的通信过程,效果直观形象。“交换机”的通信处理软件部分由各种不同模块组成,且有“标准接口”连接各个模块,要求学生按照规定的接口和数据结构来完成其中几个关键功能模块的设计和编程,并将该程序装入系统内,替代系统内原有相同的模块,检验是否能完成正常的通信处理,若能,则表明学生所编程序可行,实验通过。2.2仿真软件的安装该仿真实验系统是一个软件系统,运行在微机上,不需要额外

12、的硬件支持。l        系统运行平台:Microsoft  Windows系统,例如windows 2000,windows xp等。l        系统运行硬件要求:不要求很高的配置(建议CPU P3以上,内存128M以上)。l        安装方法本实验系统由安装文件“仿真实验系统安装文件.exe”安装而成。安装方法如下:1)   &

13、#160;   双击安装文件“仿真实验系统安装文件.exe”,即可开始安装。进入语言选择界面:选择安装提示语言,点击下一步(这里选择中文提示)。2)       进入安装目标目录选择界面:点击浏览按键选择你要安装的目标目录或在文本框中直接输入目标目录。选定目标目录后,点击下一步,即可完成系统的安装。2.3仿真软件使用说明1.  点击安装目录下的可执行文件“现代交换原理仿真实验系统.exe”或点击桌面上的快捷方式,即可启动实验系统。进入开始动画:在动画上单击鼠标即可结束动画,进入实验系统。2.&#

14、160;  进入实验系统主界面后。建议学生先到帮助系统查看所需要的实验帮助,那里会让你对要进行的实验有一个大概的认识,然后再选择实验。3. 在选择了需要编程的实验后,会直接进入编程环境,软件把需要学生完成的实验部分的函数头已经做好了,请不要改动其中的函数修饰符,这是为显式加载dll所准备了(因为代码模块经编译连接后会形成dll文件加载到主程序中)。学生可以在主界面进行源代码编辑、保存、编译、联接等工作(只有在保存完代码后才可以进行编译,然后才能进行连接):在编译连接后下可运行实验来验证的代码的正确性。可随时点击演示观看软件提供的演示;4. 对于不需要编程的实验,在进入实验后请直接进入

15、“编译运行”菜单选择“运行”或者“演示”进行操作;5.   如果在实验过程中遇到问题,软件在帮助菜单中提供了帮助信息: 提醒注意的是:对于编程实验,如果想保存完成的文件,请在下次启动应用程序之前把它拷贝到使用者自己的文件夹中(文件保存在sourcefile文件夹中),否则当下次应用程序启动时,上次所完成的部分将被清空,为“新的”实验者使用作准备。第三章 程序设计代码3.1程序总代码#define MaxPortNum /DTE上的最多端口#define MaxAddressNum /每个端口上对应的最大的目的地址#define MaxLcnNum /每个端口上最大

16、的逻辑信道数#define MaxRouterNum /分组交换节点线程的路由表的行数struct RoutTableType int in_port; 入端口号 int in_lcn; 入LCN int out_port; 出端口号 int out_lcn; 出LCN;struct DTERoutTbaleType char* AddressMaxAddressNum; / 目的地址 bool lcn_stateMaxLcnNum; / LCN的状态,true 为忙,false为闲;DTERoutTbaleType DTERoutTbaleMaxPortNum; / DTE的路由表3.2虚电

17、路建立函数 函数功能:DTE终端线程调用虚电路建立函数,根据连接的目的地址,查询路由表,为本次连接分配端口号以及逻辑信道号,初始话虚电路的建立。函数原型: #include "pconstant.h" #include "string.h" extern "C" _declspec(dllexport) bool setup(char * address, int port_lcn2,DTERoutTbaleType DTERoutTbale) return true; 主要数据结构说明:函数参数说明 in(输入参数) char *

18、address:目的地址 out(输出参数) int port_lcn2:输出分配的端口号,以及逻辑信道号port_lcn0为端口号,port_lcn1为逻辑信道号 in/out(输入/输出参数)DTERoutTbaleType DTERoutTbale:路由表 函数要求,根据目的地址,在给定的路由表中查询该目的地址对应的端口,然后在该端口上查找一个空闲的LCN分配给该连接,并将该LCN的状态置为忙。如果能够成功分配LCN返回true,否则返回false。3.3虚电路拆除函数函数功能说明: DTE终端线程调用虚电路拆除函数来完成虚电路的拆除,函数原型:#include "pconst

19、ant.h"#include "string.h"extern "C" _declspec(dllexport) bool clean(char * address, int port_lcn2,DTERoutTbaleType DTERoutTbale) return true;主要数据结构说明:函数参数说明 in(输入参数) char * address:目的地址 in(输出参数) int port_lcn2:输出分配的端口号,以及逻辑信道号port_lcn0为端口号,port_lcn1为逻辑信道号 in/out(输入/输出参数)DTERo

20、utTbaleType DTERoutTbale:路由表函数要求,根据目的地址,端口号和逻辑信道号,判断端口号是否在允许的范围内,然后检查对应的逻辑信道状态,如果为忙,将其置为闲,返回true,否则返回false3.4分组转发函数函数功能说明: DTE终端线程调用虚电路拆除函数来完成虚电路的拆除。函数原型:#include "pconstant.h"extern "C" _declspec(dllexport) bool pack_switch ( int In_port_lcn,int Out_port_lcn, RoutTableType Table

21、) return true;主要数据结构: in(输入参数)int In_port_lcn:分组交换节点线程接到的分组入端的端口号和逻辑信道号,In_port_lcn0为端口号,In_port_lcn1为逻辑信道号。 out(输出参数) int Out_port_lcn:分组出端的端口号和逻辑信道号,Out_port_lcn0为端口号,Out_port_lcn1为逻辑信道号。 in(输入参数) RoutTableType Table:分组交换节点线程的路由表信息。函数要求:分组转发函数根据分组入端的端口号和逻辑信道号,查找本分组交换节点线程的路由表,若查找到所需的路由信息(路由表数组总共有三项),将出端的端口号和逻辑信道号值赋给Out_port_lcn数组,函数返回true,否则函数返回值为false。第四章 软件的仿真结果图下图为分组交换的呼叫建立仿真:分组交换的呼叫建立下图为分组交换数据传输仿真:分组交换的数据传输下图为分组交换的呼叫清除仿真:分组交换的呼叫清除下图为永久虚电路建立仿真:永久虚电路的建立第五章 心得与体会本次课程设计是为了培养我们的动手能

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论