一、问题
试想一下,你需要为公司内部互联网的扩展制定一个合理的方案。目前,公司在办公楼的第一层有一个星型拓扑的网络,
现在要在第二层增加另一个星型拓扑网络。
二、建立网络拓扑结构
1、创建新的工程和场景
(1)
(2)opnet编辑器
(3)工程和场景名
空场景
场景尺寸
(4)选择opnet自带家族模型
确认环境设置
Sm_Int_Model_List模型家族下的所有模型:节点模型和链路模型
(5)设置拓扑结构
三种方法创建网络拓扑:导入拓扑图,从对象模板中选择模型并放置在工作空间中,使用快速拓扑配置工具。
快速拓扑配置工具
中心节点选择3C_SSII_1100…,这是3Com公司的交换机。
继续设置周边节点,节点个数,链路模型,中心坐标和半径。
(6)增加服务器
打开对象模板,选中Sm_Int_server对象,放置在工作空间中
点击close,然后在工作空间中点击左键,放置服务器,然后点击右键结束放置。
多次点击左键,可以放置多个服务器。
(7)连接服务器和星型网络
在服务器上单击鼠标左键,移动光标,再单击星型网络的中心节点。
这时出现连接两个节点对象的链路。 单击鼠标右键结束链路创建
(8)网络配置业务
最后需要为网络配置业务,包括应用定义(Application definition)和业务规格定义
(Profile definition),设置业务涉及的内容较复杂,本例程不作要求,因此模板中应用定义
对象和业务规格定义对象的参数已经配置好(为 Light database 业务),只要将他们放置在
工作空间中即可。
拓扑结构如下图所示
(9)查看网络服务器结构
每个网络对象(链路除外)都是一个节点模型,它由一个或多个模块(Modules)组成,模块与模块之间通过包流(Packet streams)或状态线相连。而模块实际上为进程模型,它通过
状态转移图(STD, State Transition Diagram)来描述模块的行为。
如下图 所示为以太网服务器的内部结构,它由几个模块以及连接模块的包流和状态
线组成。
在仿真过程中,来自客户端的数据包被收信机 hub_rx_0_0 接收,然后由下至上穿过协
议栈到 application 模块。经过处理后,又沿原路返回至发信机 hub_tx_0_0,最后被传输到
客户端,如图 1-29 所示。
(10)查看tpal进程模型
在节点模型编辑器中的 tpal 模块 上双击鼠标。
状态与状态之间通过转移线 transitions 相连。转移线可以是带条件的(必须满
足条件才能转移)或者无条件的(直接转移)
在 init 状态的上半部双击鼠标,打开它的入口代码。在 init 状态的下半部双击鼠标,打开它的出口代码。
进程中的每个状态(图中红色的或绿色的圆圈)都包含一个入口代码(enter executive)和一个出口代码(exit executive),它们由 C/C++代码组成。入口代码在进入状态时执行,
出口代码在离开状态时执行,如图 1-31 所示。
以上是查看了现有网络拓扑结构的一些模型,例如进程模型和节点模型。对于复杂拓扑结构需要自己变成定义
进程模型、节点模型和网络模型。
三、收集统计量
在网络模型中可以对单个对象收集统计量( Object statistics),也可以对整个网络收集全局统计量( Global statistics)。
(1)服务器负载(Server Load)是整个网络的性能瓶颈。下面来收集与服务器负载相关的统计量:
在服务器节点(node_31)上单击鼠标右键, 从弹出的菜单中选择 Choose Individual Statistics。
(2)全局统计量
选择全局 Delay 统计量来查看整个网络的延时性能。
四、运行仿真,查看结果
(1)确定 Preferences属性设置正确
在 Edit 菜单中选择 Preferences。
在查找文本框中输入“repositories”,单击 Find 按钮。
在弹出的对话框的左下角单击 Insert 按钮,在文本框中输入 stdmod,然后回车。
单击 OK 关闭 repositories 和 Preferences 对话框。
(2)运行仿真
在 Simulation 菜单中选择 Configure Simulationl...,或者在工具栏中选择运行仿真按钮 。
将仿真时间 Duration 设置为 0.5,即模拟执行半小时的仿真
单击 Run 按钮运行仿真。
运行完毕后单击 Close 按钮关闭对话框。
注意,这里设置了30分钟仿真时间,但是实际用时很短,这就是opnet离散仿真的优势,极大缩短仿真时间。
(3)查看结果
可以从项目编辑器中弹出的菜单中选择 View Results 查看结果。
查看服务器 Ethernet load 结果:
在服务器节点(node_31)上单击鼠标右键,从弹出的菜单中选择 View Results,
这时出现查看结果对话框,然后选中 Load(bits/sec)。
在工作空间中单击鼠标右键,从弹出的菜单中选择 View Results。
选择 Global Statistics→Ethernet→Delay(sec),然后单击 Show 按钮。
注意到负载最大值为 6,000 bits/second ,网络收敛时的延时大约为 0.4 微秒 。
五、复制场景并扩展网络
你已经创建了一个基本的网络,并且收集了相关结果。现在可以扩展该网络并且验证在增加额外负载下,
网络仍然能够很好地工作。
为了保留刚才的网络场景,以便和扩展的网络场景的仿真结果相比较,需要复制场景:
(1)复制场景
在 Scenarios 菜单中选择 Duplicate Scenario...。
命名新的场景为 expansion。
单击 OK 按钮。
(2)构建拓展网络
从 Topology 菜单中选择 Rapid Configuration。
从配置下拉列表中选择 Star,单击 OK...。
选择中心节点模型为 3C_SSII_1100_3300_4s_ae52_e48_ge3。
选择周边节点模型为 Sm_Int_wkstn,并设置节点个数为 15。
选择链路模型为 10BaseT。
指定网络在工作空间中放置的位置:中心的 X 轴坐标为 75 和 Y 轴坐标为 62.5。
局域网的半径范围为 20。
设置好以后单击 OK 按钮,这时项目编辑器中出现另一个局域网。
(3)连接两个局域网
单击对象模板工具按钮 。
选中 Cisco 2514 路由器并将它放置在两个局域网之间。单击鼠标右键结束放置。
在对象模板中选中 10BaseT 链路图标,在项目编辑器中分别连接 node_30 和node_50(Cisco 路由器),以及 node_49 和 node_50。
单击鼠标右键。
关闭对象模板。
在 File 菜单中选择 Save 保存项目。
(4)运行
六、比较结果
(1)服务器负载
在DES菜单栏下选择 Compare Results。
选择方框内容,画图。
更改表现模式
可以看出扩展后网络负载变大。
(2)网络延时
可以看出网络延时并没有随着服务器负载增大而增加。
七、保存格式
一个工程(1_Sm)下两个场景(1_Sm-1_first_floor和1_Sm-expansion)的保存格式。
八、opnet文件管理
(1)更改opnet工作目录
设置为默认路径,以后所有文件都将保存在该路径下。
(2)
另外在 C:op_admin 目录下,包含的一些特殊的文件及子目录有些特殊的用途,有时
需要对它们进行一些管理:
(1) session_log 文件,记录了有关 OPNET 的所有操作,如对模型的复制,创建,删
除等。
(2) err_log 文件,为错误日志文件,它包含了出错情况下完整的函数调用堆栈信息,
我们可以从函数阶层性的调用关系中精确找到出错位置。
(3) env_db 文件,为 OPNET 环境文件,所有在 Edit->Preference 下的改动都会保存
到这个文件中,同时环境变量的文本化给移植带来很大方便。
(4) op_admin mp 目录,保存仿真中间结果,时间一长,该目录包含的文件可能占用
大量的硬盘空间,注意定时清空该目录。
(5) op_admink 目录,备份文件,在 Edit->Preference 下可设置 backup_interval 来指
定多长时间备份一次,以及通过设置 backup_max_count 指定备份的最大次数,它和 tmp 目
录相似,长时间不清空可能占用很多硬盘空间
九、帮助
出现下面情况,更改兼容模式
学习文档