包交换网络仿真包交网络仿真.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
包交换网络仿真包交网络仿真

实验三 包交换网络仿真 实验目的 (1)学习包式编辑器,链路编辑器和探针编辑器的使用; (2)复习进程编辑器和节点编辑器的基本原则; (3)总结一些OPNET模型设计的基本原则; (4)设计自定义的统计量 (5)对多个统计量进行统计参量研 2、实验环境 Windows XP系统 OPNET Modeler 10.0仿真软件 3、实验原理 简单的包式交换网络的网络性能可以通过网络中业务流量的端到端的延时来衡量。本实验就是通过设计四个外围结点和一个中心节点,再通过测量它的业务量延时来了解它的网络性能。 4、实验设计、实验内容 (一)定义包格式 简单说就是创建一个名为为dest_addr,属性为整形,大小32,并确保在生成数据包时不会被指定一个默认值的包。如图1: 图1 建立一个包格式 (二)外围节点设计 外围节点模型生成数据包,指派数据包的目的地址并处理收到的数据包。外围节点使用数据包发生器模块来创建包,使用用户自定义的进程模块指派数据包的目的地址,将其发送到点到点的发信机,并回复来自点到点收信机的数据包。收到数据包后,进程模块将计算数据包的点到点延时,并将延时的值写入到全局统计(如图2)。 图2 外围节点节点模型 (三)中心节点设计 设计中心节点的最简单办法就是在中心节的输出包流和外围节点的地址之间建立直接关联。另一种方法是在中心节点模型中保持一张目的地址和发信机索引流之间的转换。在本模型中,更适合采用目的地址和索引流之间的直接映射。 这里,将中心节点模型设计为由四个点到点收信机/发信机对和一个用于一个用于将函数包从收信机中继到发信机的进程模块组成。如图3: 图3 中心节点节点模型 (四)创建进程模块 首先就是创建中心节点的进程模型。在中心节点模型中,处理机hub(节点名)从收信机收到一个包,它将目的地址将其转到正确的发信机模块。hub模块将通过包流链接到收信机和发信机。数据包到达时将产生一个中断并hub模块接收。因为该中断是整个节点中唯一期望的中断,所以hub 进程模型的有限状态机(FSM)只要两个状态:一个非强制的空闲状态为事件之间的等待和一个强制状态来处理数据包的代码。 如图4的一个模型: 图4 中心节点的进程模型 其中头模块代码如下: #define PK_ARRVL (op_intrpt_type()==OPC_INTRPT_STRM) 这个宏定义PK_ARRVL条件,将比较过来的中断是否和OPC_INTRPT_STRM一致。 功能模块代码如下: static void route_pk(void) { int dest_addr; Packet* pkptr; FIN (route_pk()); pkptr=op_pk_get (op_intrpt_strm()); op_pk_nfd_get_int32 (pkptr,dest_addr,dest_addr); op_pk_send (pkptr,dest_addr); FOUT; } 该段代码在进程模块收到中断流后执行。首先,通过op_intrpt_strm()获得数据包流的索引。op_pk_get()随后使用该数据包流索引返回到一个指向数据包指针pkptr。 接下来,通过核心函数op_pk_nfd_get_int32()获得数据包中的目的地址。该目的地址字段名是“dest_addr”,它是一个整形字段。op_pk_nfd_get_int32()将目的地址的值保留在本地变量dest_addr中。 最后再由op_pk_send()根据目的地址将包发送到点到点的发信机。 其次是创建外围节点模型。外围节点的proc模块由初始状态和空闲状态两个进程组成。如图5: 图5 外围节点进程模型 下面就是定义SRC_ARRVL和RCV_ARRVL两个状态的宏以及状态和临时变量。 /* packet stream definitions */ #define RCV_IN_STRM 0 #define SRC_IN_STRM 1 #define XMT_OUT_STRM 0 /* transition macros */ #define SRC_ARRVL (op_intrpt_type()==OPC_INTRPT_STRM op_intrpt_strm()==SRC_IN_STRM ) #define RCV_ARRVL (op_i

文档评论(0)

cxiongxchunj + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档