zoukankan      html  css  js  c++  java
  • 配置一个简单网络

    一、问题

    试想一下,你需要为公司内部互联网的扩展制定一个合理的方案。目前,公司在办公楼的第一层有一个星型拓扑的网络,

    现在要在第二层增加另一个星型拓扑网络。 

    二、建立网络拓扑结构

     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 StatisticsEthernetDelay(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_50Cisco 路由器),以及 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 目录下,包含的一些特殊的文件及子目录有些特殊的用途,有时
    需要对它们进行一些管理:
    1session_log 文件,记录了有关 OPNET 的所有操作,如对模型的复制,创建,删
    除等。
    2err_log 文件,为错误日志文件,它包含了出错情况下完整的函数调用堆栈信息,
    我们可以从函数阶层性的调用关系中精确找到出错位置。
    3env_db 文件,为 OPNET 环境文件,所有在 Edit->Preference 下的改动都会保存
    到这个文件中,同时环境变量的文本化给移植带来很大方便。
    4op_admin mp 目录,保存仿真中间结果,时间一长,该目录包含的文件可能占用
    大量的硬盘空间,注意定时清空该目录。
    5op_admink 目录,备份文件,在 Edit->Preference 下可设置 backup_interval 来指
    定多长时间备份一次,以及通过设置 backup_max_count 指定备份的最大次数,它和 tmp
    录相似,长时间不清空可能占用很多硬盘空间

    九、帮助

    出现下面情况,更改兼容模式

    学习文档

  • 相关阅读:
    07_控制线程_join_线程插队
    06_线程的生命周期及状态
    05_线程间通信
    04_线程的创建和启动_使用Callable和Future的方式
    03_线程的创建和启动_实现Runnable接口方式
    02_线程的创建和启动_继承Thread方式
    01_基础知识
    07_XPath_02_常用语法
    二叉树分层遍历
    [LeetCode] Binary Tree Level Order Traversal II
  • 原文地址:https://www.cnblogs.com/ruo-li-suo-yi/p/8484820.html
Copyright © 2011-2022 走看看