OPNET的调试运行发布版

OPNET的调试运行发布版
OPNET的调试运行发布版

OPNET的调试运行——命令行、CDB及其它

月野兔

目录

1,OPNET的命令行使用方式 (1)

1.1,op_runsim (1)

仿真名设定: (1)

仿真参数设定: (2)

仿真时间的设定: (3)

1.2,调用odb来调试 (3)

1.3,op_mksim (4)

制作可执行文件: (4)

执行仿真: (5)

2,OPNET在Windows下面的CDB调试 (5)

2.1,为什么要使用CDB (6)

2.2,如何下载安装配置CDB (6)

2.3,使用CDB (7)

图形模式 (7)

文字符模式 (8)

2.4,其它 (10)

OPNET作为一款专业的跨平台的通信仿真开发软件,是有着强大的逻辑调试源码级调试功能的,并且支持跨平台的调试,这是理解调试的关键之一。此片专讲OPNET的命令行运行、调试等功能。

1,OPNET的命令行使用方式

涉及到调试开发,则深入到了并且离不开OPNET的命令行使用方式,因此上要熟悉其命令行仿真运行的环境。OPNET的命令行功能全部提供在"OPNET console"中,安装好的OPNET提供的这个命令行环境shell的意义在于执行了OPNET自带的自动设置运行环境的脚本,使得用户在此命令行下可以直接调用op_runsim等各个命令,如果使用者熟悉命令行的使用又有比较高级的需求,可以自定义自己的环境,修改脚本。

1.1,op_runsim

第一个命令就是op_runsim,作用是执行仿真,OPNET的图形界面的仿真应该就是后台调用该命令。

仿真名设定:

此仿真命令有详尽的复杂的参数设计,从简单入手,最基本的参数是指定仿真名

op_runsim -net_name blabla

blabla是在当前路径下的仿真场景模型名,在文件管理器中看到的后缀名是.net.m,而在此命令中不用添加后缀名

E:\yueyetu\opnet\models\yyt_mm1net.project>dir

驱动器E 中的卷是新加卷

卷的序列号是BCEE-CDCB

E:\yueyetu\opnet\models\yyt_mm1net.project 的目录

2010-03-24 10:41

.

2010-03-24 10:41

..

2009-08-18 15:19 40,486 yyt_mm1net-#mm1-DES-1.desinfo

2009-08-18 15:19 962 yyt_mm1net-#mm1-DES-1.ef

2010-03-24 10:41

yyt_mm1net-#mm1-DES-1.olf.dir

2009-08-18 15:19 6,643 yyt_mm1net-#mm1-DES-1.ot

2009-08-18 15:19 2,943 yyt_mm1net-#mm1-DES-1.ov

2009-08-18 15:19 98,304 yyt_mm1net-#mm1.dev32.i0.nt.dll

2009-08-18 15:19 7,126 yyt_mm1net-#mm1.dev32.i0.nt.exp

2009-08-18 15:19 13,772 yyt_mm1net-#mm1.dev32.i0.nt.lib

2009-08-18 15:19 330,752 yyt_mm1net-#mm1.dev32.i0.nt.pdb

2009-08-18 15:14 5,778 yyt_mm1net-#mm1.nt.m

2009-08-18 15:18 1,741 yyt_mm1net-#mm1.pb.m

2009-08-18 15:19 3,925 yyt_mm1net-#mm1.seq

2010-03-24 10:41 42,768 yyt_mm1net-mm1-DES-1.desinfo

2010-03-24 10:41 962 yyt_mm1net-mm1-DES-1.ef

2010-03-24 10:41

yyt_mm1net-mm1-DES-1.olf.dir

2010-03-24 10:41 6,643 yyt_mm1net-mm1-DES-1.ot

2010-03-24 10:41 2,943 yyt_mm1net-mm1-DES-1.ov

2009-08-18 15:19 98,304 yyt_mm1net-mm1.dev32.i0.nt.dll

2009-08-18 15:19 382 yyt_mm1net-mm1.dev32.i0.nt.dll.manifest

2009-08-18 15:19 7,126 yyt_mm1net-mm1.dev32.i0.nt.exp

2009-08-18 15:19 13,772 yyt_mm1net-mm1.dev32.i0.nt.lib

2009-08-18 15:19 330,752 yyt_mm1net-mm1.dev32.i0.nt.pdb

2009-08-18 15:14 5,778 yyt_mm1net-mm1.nt.m

2010-03-24 10:41 1,748 yyt_mm1net-mm1.pb.m

2010-03-24 10:41 3,925 yyt_mm1net-mm1.seq

2009-08-18 15:32 1,320 yyt_mm1net.prj

24 个文件1,028,855 字节

4 个目录433,422,336 可用字节

E:\yueyetu\opnet\models\yyt_mm1net.project>op_runsim -net_name yyt_mm1net-mm1

|-----------------------------------------------------------------------------|

| ____ _____ _ _ ______ _______ |

| / __ \ | __ \ | \ | || ____||__ __| Simulation and Model Library |

| | | | || |__) || \| || |__ | | Copyright 1986-2009 by |

| | | | || ___/ | . ` || __| | | OPNET Technologies, Inc. |

| | |__| || | | |\ || |____ | | as a part of OPNET Release 15.0 |

| \____/ |_| |_| \_||______| |_| |

|-----------------------------------------------------------------------------|

| Making Networks and Applications Perform |

|-----------------------------------------------------------------------------|

| OPNET Technologies, Inc. / 7255 Woodmont Av. / Bethesda, MD 20814, USA |

| WEB: https://www.360docs.net/doc/5d9499696.html, / TEL: +1.240.497.3000 / FAX: +1.240.497.3001 |

|-----------------------------------------------------------------------------|

| Protected by U.S. Patent 6,820,042. |

|-----------------------------------------------------------------------------|

| Network Simulation of: yyt_mm1net-mm1 |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Simulation Completed - Collating Results. |

| Events: Total (4,067); Average Speed (626,266 events/sec.) |

| Time : Elapsed (0.01 sec.); Simulated (16 min. 40 sec.) |

| |

|-----------------------------------------------------------------------------|

E:\yueyetu\opnet\models\yyt_mm1net.project>

仿真参数设定:

对于有参数需要设置的仿真模型,比如有些节点存在属性被promoted到顶层需要设置的,在命令行中可以设定,在属性参数名前加短横线-,如果字符串中包含空白符,则字符串应该前后加上英文双引号,参数名后参数值前用空白符分割,参数值字符串如果包含空白符同样需要被双引号包含,如下:

E:\yueyetu\opnet\models\wireless.project>op_runsim -tmm_simulate true -net_name wireless-base -top.tx.altitude 100 -"top.tx.tx_gen.Packet Interarrival Time" "constant (1.0)" -"top.tx.tx_gen.Packet Size" "constant (1024)" -top.rx.ant_rx.pattern isotropic

|-----------------------------------------------------------------------------|

| ____ _____ _ _ ______ _______ |

| / __ \ | __ \ | \ | || ____||__ __| Simulation and Model Library |

| | | | || |__) || \| || |__ | | Copyright 1986-2009 by |

| | | | || ___/ | . ` || __| | | OPNET Technologies, Inc. |

| | |__| || | | |\ || |____ | | as a part of OPNET Release 15.0 |

| \____/ |_| |_| \_||______| |_| |

|-----------------------------------------------------------------------------|

| Making Networks and Applications Perform |

|-----------------------------------------------------------------------------|

| OPNET Technologies, Inc. / 7255 Woodmont Av. / Bethesda, MD 20814, USA |

| WEB: https://www.360docs.net/doc/5d9499696.html, / TEL: +1.240.497.3000 / FAX: +1.240.497.3001 |

|-----------------------------------------------------------------------------|

| Protected by U.S. Patent 6,820,042. |

|-----------------------------------------------------------------------------|

| Network Simulation of: wireless-base |

|-----------------------------------------------------------------------------|

I: OpenFlight API version 3.1.1.

I: Site registered for plugin .

I: Plugin loaded.

|-----------------------------------------------------------------------------|

| Simulation Completed - Collating Results. |

| Events: Total (4,002); Average Speed (6,586 events/sec.) |

| Time : Elapsed (0.61 sec.); Simulated (16 min. 40 sec.) |

| |

|-----------------------------------------------------------------------------|

E:\yueyetu\opnet\models\wireless.project>

仿真时间的设定:

在仿真前用图形界面OPNET里设定好仿真时间,保存,然后使用op_runsim执行,也可以在op_runsim中用-duration参数来指定时间,单位为秒。这里所说的是仿真内容的时间,而不是仿真所花费的时间

1.2,调用odb来调试

加参数-debug即可

% op_runsim -net_name ACE-local_net -debug

|-----------------------------------------------------------------------------|

| ____ _____ _ _ ______ _______ |

| / __ \ | __ \ | \ | || ____||__ __| Simulation and Model Library |

| | | | || |__) || \| || |__ | | Copyright 1987-2003 by |

| | | | || ___/ | . ` || __| | | OPNET Technologies, Inc. |

| | |__| || | | |\ || |____ | | as a part of OPNET Release 10.0.A |

| \____/ |_| |_| \_||______| |_| |

|-----------------------------------------------------------------------------|

| O P T I M U M N E T W O R K P E R F O R M A N C E |

|-----------------------------------------------------------------------------|

| OPNET Technologies, Inc. / 7255 Woodmont Av. / Bethesda, MD 20814, USA |

| TEL: +1.240.497.3000 / FAX: +1.240.497.3001 |

|-----------------------------------------------------------------------------|

| Network Simulation of: ACE-local_net |

|-----------------------------------------------------------------------------|

| Kernel: development (not optimized), sequential |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Reading network model (ACE-local_net) |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Reading result collection file: (ACE-local_net) |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Verifying model consistency. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Loading scenario model library. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Counting objects. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Allocating objects. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Allocating objects. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Allocating attributes. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Installing subnetworks and nodes. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Installing links. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Constructing model hierarchy. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Creating node contents. | |-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Attaching links to nodes. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Preparing for results collection. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Releasing Model Memory. | |-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Opening results file. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Final initializations for all objects. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Initializing results. |

|-----------------------------------------------------------------------------|

|-----------------------------------------------------------------------------|

| Loading OPNET Debugger. | |-----------------------------------------------------------------------------|

_______________ OPNET Simulation Debugger _______________

Type 'help' for Command Summary

odb> quit

|-----------------------------------------------------------------------------|

| Simulation Completed - Collating Results. |

| Simulated: Time (0 sec.), Events (26) |

| Time: Elapsed (8 sec.) |

|-----------------------------------------------------------------------------|

%

详细调试细节见后文

1.3,op_mksim

制作可执行文件:

E:\yueyetu\opnet\models\wireless.project>op_mksim -net_name wireless-base

-----------------------------------------

Building simulation archive

-----------------------------------------

-----------------------------------------

Sorting simulation archive

-----------------------------------------

-----------------------------------------

Generating Simulation 'C' Form

-----------------------------------------

-----------------------------------------

Compiling Simulation 'C' Form

-----------------------------------------

-----------------------------------------

Binding simulation executable

-----------------------------------------

----------------------------------------------

op_mksim: Simulation (E:\yueyetu\opnet\models\wireless.project\wireless-base.dev32.i0.sim) Produced

----------------------------------------------

E:\yueyetu\opnet\models\wireless.project>

之后,用这个创建出来的执行文件,

执行仿真:

E:\yueyetu\opnet\models\wireless.project>wireless-base.dev32.i0.sim -tmm_simulate true -top.tx.altitude 100 -"top.tx.tx_gen.Packet Interarrival Time" "constant (1.0)" -"top.tx.tx_gen.Packet Size" "constant (1024)" -top.rx.ant_rx.pattern isotropic

|-----------------------------------------------------------------------------|

| ____ _____ _ _ ______ _______ |

| / __ \ | __ \ | \ | || ____||__ __| Simulation and Model Library |

| | | | || |__) || \| || |__ | | Copyright 1986-2009 by |

| | | | || ___/ | . ` || __| | | OPNET Technologies, Inc. |

| | |__| || | | |\ || |____ | | as a part of OPNET Release 15.0 |

| \____/ |_| |_| \_||______| |_| |

|-----------------------------------------------------------------------------|

| Making Networks and Applications Perform |

|-----------------------------------------------------------------------------|

| OPNET Technologies, Inc. / 7255 Woodmont Av. / Bethesda, MD 20814, USA |

| WEB: https://www.360docs.net/doc/5d9499696.html, / TEL: +1.240.497.3000 / FAX: +1.240.497.3001 |

|-----------------------------------------------------------------------------|

| Protected by U.S. Patent 6,820,042. |

|-----------------------------------------------------------------------------|

| Network Simulation of: wireless-base |

|-----------------------------------------------------------------------------|

I: OpenFlight API version 3.1.1.

I: Site registered for plugin .

I: Plugin loaded.

|-----------------------------------------------------------------------------|

| Simulation Completed - Collating Results. |

| Events: Total (4,002); Average Speed (6,485 events/sec.) |

| Time : Elapsed (0.62 sec.); Simulated (16 min. 40 sec.) |

| |

|-----------------------------------------------------------------------------|

E:\yueyetu\opnet\models\wireless.project>

om_mksim与op_runsim的区别是,op_runsim调用C编译器重新编译源码,链接直到最后完成仿真,而op_mksim只是编译这个仿真,最终执行可执行文件时再链接相关库并执行

OPNET其它命令行执行文件细节详见OPNET文档

2,OPNET在Windows下面的CDB调试

OPNET仿真的调试分两种级别,对象级和代码级调试,对象级调试使用OPNET自身的ODB 工具来调试,既有图形界面又有文字符模式;而代码级调试则需要,Linux下面是GDB,Winblows下面是CDB,同样都支持图形界面和文字符两种模式。

这里讲如何安装Winblows下面的CDB,如何配置,并如何在图形界面和命令行提示符下面使用CDB加上ODB来调试OPNET仿真。

2.1,为什么要使用CDB

Winblows平台下面的软件开发与调试,最亲民的应该是出自Micro$aft微软本身的MSVS 里面的VC的编译器和调试器,OPNET的帮助文档里指导了如何将VC调试器attach到OPNET 仿真进程上,但是文档语焉不详,并且经过笔者实验,并未成功。

OPNET帮助文档着重描述了如何使用Micro$aft出的CDB来调试OPNET,这才是重点。CDB是console debug的缩写,是微软出的调试工具包中的一部分,从微软CDB自带手册摘出来的介绍解释如下:

This edition of the Debugging Tools for Windows documentation describes four Microsoft debuggers: WinDbg, KD, CDB, and NTSD. It also describes additional debugging tools, as well as various debugging techniques

这里知道这个工具包除了CDB之外还包括windbg、kd和大名鼎鼎的ntsd。摘出OPNET 文档如何解释为何CDB是最好的调试工具:

The Debugging Tools for Windows package from Microsoft includes a source-level console debugger called CDB. Unlike MSVC, CDB can be used from the GUI in conjunction with the OPNET Debugger. Because CDB offers a way to control and examine the execution of source code, it is a useful supplement to ODB. With CDB attached, you can perform detailed debugging of process model code in the context of an active simulation.

这里知道CDB最关键的特性是在命令提示符下面使用的源代码调试工具,这样很相似于Linux下面的GDB这个调试工具,对于OPNET这样一个跨平台的专业领域仿真工具而言,设计为在底层使用这样的调试工具会很方便实现OPNET跨平台的设计。

2.2,如何下载安装配置CDB

虽然是微软软件,所幸CDB这一套工具是在微软网站上免费下载的,不用费尽苦心去寻找什么破解盗版带病毒版本。去https://www.360docs.net/doc/5d9499696.html,网址搜索"debugging tools"即可搜到,找到后,可以选择32位或64位的版本,还可以选择最新版和历史版本,截止到2010年3月,最新版为6.12.x版,但是被集成到新版的调试工具包一起发布为光盘镜像iso文件,显著超过OPNET仿真需求,因此建议下载历史版本6.11.1.404,在WinblowsXP下面显然应该选择X86版本,因此下载到文件:

dbg_x86_6.11.1.404.msi

大小仅为18MB

严重建议安装时候选择默认的C盘分区下面,安装时候一路默认无话短说。最关键的是配置OPNET来调用CDB来调试。

首先设置OPNET寻找CDB的路径:在OPNET的preferences editor中敲入CDB寻找到设置项:

Path to 32-bit Windows Command-line Debugger

OPNET该项设置默认的就是C盘下的

C:\Program Files\Debugging Tools for Windows\cdb.exe

但是显然这个不是dbg_x86_6.11.1.404.msi默认创建的安装路径,应该改为

C:\Program Files\Debugging Tools for Windows (x86)\cdb.exe

然后搜索Show Console,找到

Show Console Window

设置项,改为TRUE,这样在仿真时将显示原始命令行窗口。不这样设置,在仿真前OPNET 会提示你必须要启用该选项才能启用CDB,

再次,搜索comp_flags_devel找到

comp_flags_devel

在值域字符串中添加/Zi编译开关,这样可以使得OPNET编译出的执行文件可以被CDB 查看代码。

2.3,使用CDB

图形模式

如上安装设置完CDB后,可以在OPNET的ODB中调用CDB调试了,支持图形界面和命令行提示符两种方式。

简单的是图形界面,在OPNET运行前选择启用odb,则出现Simulation Execution窗口运行仿真,选择菜单

Simulation > Attach Windows Debugger (CDB)

如果不出意外的话,稍候几秒钟,CDB链接到运行进程中,并且ODB界面会扩展出专为GDB、CDB设计的调试按钮和代码显示区域,这样就可以在这图形界面下从对象级调试到代码级,细致抓取仿真中的每一个细节。

接下来调试上的细节问题就具体看ODB的文档和CDB的文档了。

文字符模式

上面记叙了如何图形界面调用CDB调试,如何在文字符下面调用CDB

同样的,先启动odb调试,然后attach上cdb这个工具的流程。

在op_runsim命令后加上-debug参数启用odb

E:\yueyetu\opnet\models\yyt_mrt_net.project>op_runsim -net_name yyt_mrt_net-antenna_test2 -debug

|-----------------------------------------------------------------------------|

| ____ _____ _ _ ______ _______ |

| / __ \ | __ \ | \ | || ____||__ __| Simulation and Model Library |

| | | | || |__) || \| || |__ | | Copyright 1986-2009 by |

| | | | || ___/ | . ` || __| | | OPNET Technologies, Inc. |

| | |__| || | | |\ || |____ | | as a part of OPNET Release 15.0 |

| \____/ |_| |_| \_||______| |_| |

|-----------------------------------------------------------------------------|

| Making Networks and Applications Perform |

|-----------------------------------------------------------------------------|

| OPNET Technologies, Inc. / 7255 Woodmont Av. / Bethesda, MD 20814, USA |

| WEB: https://www.360docs.net/doc/5d9499696.html, / TEL: +1.240.497.3000 / FAX: +1.240.497.3001 |

|-----------------------------------------------------------------------------|

| Protected by U.S. Patent 6,820,042. |

|-----------------------------------------------------------------------------|

| Network Simulation of: AVY_mrt_net-antenna_test2 |

|-----------------------------------------------------------------------------|

_______________ OPNET Simulation Debugger _______________

Type 'help' for Command Summary

odb>

再开启一个命令行提示符,将要在这里面使用CDB来调试代码。首先要找到OPNET仿真的进程的pid号,使用tasklist命令:

D:\Program Files\console2>tasklist /fi "imagename eq op_runsim_dev.exe"

图像名PID 会话名会话# 内存使用

========================= ====== ================ ======== ============

op_runsim_dev.exe 3516 Console 0 24,152 K

D:\Program Files\console2>

其实还有一个op_runsim.exe进程,但是必须要有op_runsim_dev.exe进程才能被CDB

来调试,并且这才是CDB所attach的进程。几下这个pid号码用在下面的参数中

D:\Program Files\console2>"C:\Program Files\Debugging Tools for Windows (x86)\cdb.exe" -p 3516 Microsoft (R) Windows Debugger Version 6.11.0001.404 X86

Copyright (c) Microsoft Corporation. All rights reserved.

*** wait with pending attach

Symbol search path is: *** Invalid ***

****************************************************************************

* Symbol loading may be unreliable without a symbol search path. *

* Use .symfix to have the debugger choose a symbol path. *

* After setting your symbol path, use .reload to refresh symbol locations. *

**************************************************************************** Executable search path is:

ModLoad: 00400000 00408000 D:\Program Files\OPNET\15.0.A\sys\pc_intel_win32\bin\op_runsim_dev.exe

ModLoad: 7c920000 7c9b4000 C:\WINDOWS\system32\ntdll.dll

ModLoad: 7c800000 7c91c000 C:\WINDOWS\system32\kernel32.dll

ModLoad: 10000000 11b1d000 D:\Program Files\OPNET\15.0.A\sys\pc_intel_win32\bin\opsim.dll ModLoad: 77da0000 77e49000 C:\WINDOWS\system32\ADVAPI32.dll

.......

.......

.......

ModLoad: 71a00000 71a08000 C:\WINDOWS\System32\wshtcpip.dll

ModLoad: 74680000 746cb000 C:\WINDOWS\system32\MSCTF.dll

ModLoad: 01fe0000 01ffb000 E:\yueyetu\opnet\models\yyt_mrt_net.project\yyt_mrt_net-antenna_test2.dev32.i0.nt.dll ModLoad: 78130000 781cb000 C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_e696798 9\MSVCR80.dll

(dbc.13c4): Break instruction exception - code 80000003 (first chance)

eax=7ffd9000 ebx=00000001 ecx=00000002 edx=00000003 esi=00000004 edi=00000005

eip=7c921230 esp=0242ffcc ebp=0242fff4 iopl=0 nv up ei pl zr na pe nc

cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000246

*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\WINDOWS\system32\ntdll.dll -

ntdll!DbgBreakPoint:

7c921230 cc int 3

0:005>

cdb命令后用-p参数来指定调试进程的pid号码,之后会刷屏出很多信息,直到最终给出一个>符号等待使用者来调试。现在整个进程被交给了cdb这个交互,在odb的shell中暂时任何命令都被挂起。最简单的,在cdb中敲入一个字母g,回车,让进程直接跑下去:0:005> g

cdb等待在这里,现在控制回到了odb中,在odb中敲入continue让仿真直接跑下去:odb> continue

|-----------------------------------------------------------------------------|

| Simulation Completed - Collating Results. |

| Events: Total (10,872); Average Speed (20,865 events/sec.) |

| Time : Elapsed (0.52 sec.); Simulated (16 min. 40 sec.) |

| |

|-----------------------------------------------------------------------------|

又回到了CDB:

0:005> g

eax=77c0b8c1 ebx=00000000 ecx=00374e38 edx=77c31ae8 esi=7c92e88e edi=00000000

eip=7c92eb94 esp=0012fab4 ebp=0012fbb0 iopl=0 nv up ei pl zr na pe nc

cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000246

ntdll!KiFastSystemCallRet:

7c92eb94 c3 ret

0:000>

此时仿真以完成,退出的命令就一个字母q:

0:000> q

quit:

D:\Program Files\console2>

ODB也自动完成了退出操作:

E:\yueyetu\opnet\models\yyt_mrt_net.project>

cdb可以用的一些基本的简单命令:

g (Go) Target executes freely.

gc (Go from Conditional Breakpoint) Resumes execution after a conditional breakpoint.

gu (Go Up) Target executes until the current function is complete.

p (Step) Target executes one instruction. If this instruction is a function call, that function is executed as a single step.

t (Trace) Target executes one instruction. If this instruction is a function call, debugger traces into that call.

cdb完整的命令列表与使用请详见微软相关CDB文档

做为C语言代码级别的调试器,CDB具备了典型的各种调试功能:断点、条件断点、stack 堆栈等等。这些调试C语言代码的能力知识,就不涉及OPNET的范畴了,而是开发调试人员本身的开发经验能力积累的问题了,相信,任何精通gdb调试或是VC调试的开发者都可以顺利掌握。

2.4,其它

OPNET自带的对象级调试工具odb的操作命令帮助可以直接在odb中敲help来查看帮助,可以调试涉及到具体的数据流、数据包、节点的状态、执行的进程等,具体的背景知识需要阅读OPNET文档。

Linux平台下的OPNET的C语言代码级调试工具,是linux下面标准的GNUgdb调试工

具,使用方法类似CDB,详见OPNET文档及gdb的man页,调试策略调试功能大同小异。

基于opnet移动无线网络的仿真

目录 一、仿真技术 (3) 1.1什么叫仿真 (3) 1.2仿真的分类 (3) 1.3网络仿真 (4) 1.3.1网络仿真的产生背景: (5) 1.3.2网络仿真的意义: (5) 1.3.3四种网络设计方法的比较 (5) 1.4当前主要的仿真工具 (6) 二、OPNET简介 (6) 2.1opnet简介 (6) 2.1.2 OPNET历史和现状 (6) 2.1.2 OPNET 全线产品介绍(1) (7) 2.1.2 OPNET 全线产品介绍(2) (7) 2.2opnet modeler简介 (8) 2.2.1OPNET Modeler的主要特性 (10) 2.2.3 OPNET Modeler 进行仿真的流程 (12) 2.2.4OPNET Modeler 三层建模机制 (12) 三、无线网络 (13) 3.1无线网络概述 (13) 3.1.1无线网络的发展 (14) 3.1.2无线网络的逻辑结构 (14) 3.2无线网络的分类 (16) 3.3无线网络的设备 (17) 四、基于opnet创建一个移动无线网络 (18) 4.1概述 (18) 4.2开始建立 (18) 4.3创建天线模型 (18) 4.4创建指向处理器 (18) 4.5创建节点模型 (18) 4.6创建网络模型 (18) 4.7收集统计量并运行仿真 (18) 4.8查看并分析结果 (18) 五、参考文献 (18) 基于opnet移动无线网络的仿真 设计任务: 1.熟练操作和运用opnet软件

2.理解和掌握无线网络的工作原理 3.理解和掌握网络仿真的原理、步骤、内容和方法 4.运用opnet软件对无线网络进行仿真 要求: 1.熟练操作和运用opnet软件 2.查阅大量资料文献:明确网络仿真的原理、步骤、内容和方法 3.认真做好学习笔记,按时完成设计

基于opnet移动无线网络的仿真

基于opnet移动无线网络的仿真 设计任务: 1.熟练操作和运用opnet软件 2.理解和掌握无线网络的工作原理 3.理解和掌握网络仿真的原理、步骤、内容和方法 4.运用opnet软件对无线网络进行仿真 要求: 1.熟练操作和运用opnet软件 2.查阅大量资料文献:明确网络仿真的原理、步骤、内容和方法 3.认真做好学习笔记,按时完成设计

目录 一、仿真技术 (3) 1.1什么叫仿真 (3) 1.2仿真的分类 (3) 1.3网络仿真 (4) 1.3.1网络仿真的产生背景: (5) 1.3.2网络仿真的意义: (5) 1.3.3四种网络设计方法的比较 (5) 1.4当前主要的仿真工具 (6) 二、OPNET简介 (6) 2.1opnet简介 (6) 2.1.2 OPNET历史和现状 (6) 2.1.2 OPNET 全线产品介绍(1) (7) 2.1.2 OPNET 全线产品介绍(2) (7) 2.2opnet modeler简介 (8) 2.2.1OPNET Modeler的主要特性 (10) 2.2.3 OPNET Modeler 进行仿真的流程 (12) 2.2.4OPNET Modeler 三层建模机制 (12) 三、无线网络 (13) 3.1无线网络概述 (13) 3.1.1无线网络的发展 (14) 3.1.2无线网络的逻辑结构 (14) 3.2无线网络的分类 (16) 3.3无线网络的设备 (17) 四、基于opnet创建一个移动无线网络 (18) 4.1概述 (18) 4.2开始建立 (18) 4.3创建天线模型 (18) 4.4创建指向处理器 (18) 4.5创建节点模型 (18) 4.6创建网络模型 (18) 4.7收集统计量并运行仿真 (18) 4.8查看并分析结果 (18) 五、参考文献 (18)

基于OPNET的IP_QoS仿真

基于OPNET的IP QoS仿真 摘要:网络仿真能够为网络的规划设计提供可靠的定量依据。网络仿真技术能够迅速地建立起现有网络的模型,并能够方便地修改模型并行仿真,这使得网络仿真非常适用于预测网络的性能,回答"WHAT…IF…"这样的问题。本文概要的介绍了网络仿真软件OPNET以及如何进行基于OPNET的IP QoS仿真。 关键词网络仿真、OPNET、IP QOS仿真 WFQ、PQ OPNET-based Simulation of IP QoS Abstract Network simulation for network planning and design can provide a reliable quantitative basis. Network simulation technology can quickly build models of existing networks and can easily modify the model and simulation, which makes network simulation is applied to predict the network performance, the answer "WHAT ... IF ..." this problem. This paper describes the outline of the OPNET network simulation software, and how the IP QoS-based OPNET simulation. Keywords:Network simulation, OPNET, IP QOS simulation ,WFQ,PQ 目录

基于OPNET校园网仿真设计

《通信网》课程设计论文题目基于OPNET校园网仿真设计 姓名 学号 学院 专业班级

基于OPNET校园网仿真设计 专业:通信工程 摘要:网络仿真是一种利用数学建模和统计分析的方法模拟网络行为,从而获取特定的网络特性参数的技术。探讨了OPNET的关键仿真技术,并介绍使用OPNET进行网络仿真的工作流程,以及对某高校校园网进行了仿真设计,对仿真结果进行了分析。 关键词:网络仿真,OPNET,校园网 ABSTRACT The network simulation is a kind of mathematical modeling and statistical analysis of the simulation of network behavior to obtain the characteristic parameters of specific network tecnologies .Discusses the key OPNET simulation tecnologies, and describes the network using the OPNET simulation workflow, as well as a campus network conducted a simulation design, simulation result are analyzed. Key Words:netwok simulation, OPNET, Campus Netwok

目录 1 绪论 (2) 2 网络仿真概述 (3) 3 OPNET仿真系统核心技术 (3) 3.1 离散事件仿真机制 (3) 3.2 仿真调度机制 (4) 3.3 建模通信机制 (4) 4 OPNET在网络规划设计的步骤及应用流程 (4) 4.1 收集和消化网络工程设计文档 (4) 4.2 建立网元模型 (4) 4.3 建立网络模型 (5) 4.4 建立网络流量模型 (5) 4.5 仿真设计和仿真计算 (5) 4.6 查看、分析结果并提交仿真报告 (5) 5 OPNET 在某校园网的仿真应用 (6) 5.1 网络拓扑 (6) 5.2 业务配置 (9) 5.3 仿真结构的分析总结 (10) 5.3.1 收集统计量 (10) 5.3.2 仿真设置 (10) 5.3.3 运行仿真 (11) 6 结论 (13) 参考文献 (14)

基于OPNET的拓扑结构的建模与仿真

基于OPENNET的拓扑结构的建模与仿真 一、实验目的 opnet的拓扑结构的建模与仿真 二、实验要求 1.采用opnet构建网络拓扑 2.采用opnet分析网络的性能 3.设备及材料 操作系统:Windows 2003/XP主机 网络模拟器:OPNET 三、实验内容 3.1概述 1)版本:OPNET 14.0 2)OPNET i)OPNET历史和现状 NET公司起源于MIT(麻省理工学院),成立于1986年。1987年OPNET公司发布了其第一个商业化的网络性能仿真软件,提供了具有重要意义的网络性能优化工具,使得具有预测性的网络性能管理和仿真成为可能。 对于网络的设计和管理,一般分为3个阶段: 第1阶段为设计阶段:包括网络拓扑结构的设计,协议的设计和配置以及网络中设备的设计和选择; 第2阶段为发布阶段:设计出的网络能够具有一定性能,如吞吐率、响应时 间等等。 第3阶段为实际运营中的故障诊断、排错和升级优化。 OPNET公司的整个产品线正好能面向网络研发的不同阶段,即可以作网络的设计,也可以作为发布网络性能的依据,还可以作为已投入运营的网络的优化和故障诊断工具。OPNET公司也是当前业界智能化网络管理分析解决方案的主要提

供商。 ii) OPNET Modeler介绍 Modeler主要面向研发,其宗旨是为了―Accelerating Network R&D(加速网络研发)。Modeler的主要特征: 次化的网络模型。使用无限嵌套的子网来建立复杂的网络拓扑结构。 简单明了的建模方法。Modeler建模过程分为3个层次:进程(process)层次、节点(Node)层次以及网络(Network)层次。在进程层次模拟单个对象的行为,在节点层次中将其互连成设备,在网络层次中将这些设备互连组成网络。几个不同的网络场景组成―项目‖,用以比较不同的设计方案。这也是Modeler建模的重要机制,这种机制有利于项目的管理和分工。 有限状态机。在进程层次使用有限状态机来对协议和其他进程进行建模。在有限状态机的状态和转移条件中使用C/C++语言对任何进程进行模拟。用户可以随心所欲地控制仿真的详细程度。有限状态机加上标准的C/C++以及OPNET本身提供的400多个库函数构成了Modeler编程的核心。OPNET称这个集合为Proto C 语言。 对协议编程的全面支持。支持400多个库函数以及书写风格简洁的协议模型。OPNET已经提供了众多协议,因此对于很多协议,无需进行额外的编程。 系统的完全开放性。Modeler中源码全部开放,用户可以根据自己的需要对源码进行添加和修改。 高效的仿真引擎。使用Modeler进行开发的仿真平台,使仿真的效率相当高。 集成的分析工具。Modeler仿真结果的显示界面十分友好,可以轻松刻 画和分析各种类型的曲线,也可将曲线数据导出到电子表格中。 动画。Modeler可以在仿真中或仿真后显示模型行为的动画,使得仿真平台具有很好的演示效果。 集成调试器。快速地验证仿真或发现仿真中存在的问题,OPNET本身有自己的调试工具——OPNET Debugger(ODB)。 源代码调试。方便地调试由OPNET生成的C/C++源代码。

计算机网络基于opnet课程设计网络仿真

计算机网络 课程设计(学年论文)说明书 课题名称:计算机网络课程设计 学生学号: 0904030228 专业班级:09电信 02班

计算机网络课程设计任务书 (适用专业:电气信息学院09级电信专业) 一、设计目的: 1.OPNET软件OPNET IT Guru Academic Edition的下载安装。 2.学会用软件创建项目、模块;学会查看、分析和比较模拟仿真实验的统计结果。 二、设计要求: 1.根据设计题目要求完成设计。 2.完成设计报告,报告要求包括以下内容:设计任务书、题目、摘要(中英文)、正文、参 考文献。 3.正文内容包括:设计思路、设计过程、调试过程、仿真结果和设计结论。 三、设计题目: 1.基础设计: (1)测试共享式以太网的性能 (2)集线器和交换机构建LAN的性能比较测试 (3)路由协议 (4)帧中继网络的性能 (5)排队策略对Qos的影响 (6)TCP吞吐率 (7)TCP差错控制 (8)TCP与UDP反应时间比 2.综合设计: (1)某个小公司现有职员10人,每个职员的计算机采用100 Mb/s集线器(HUB)的方式连接到一台服务器上。请你采用仿真软件OPNET,对于以上的具体环境(自己选定集线器和服务器的型号),进行网络性能的仿真,给出网络的信道利用率、吞吐量、传输时延、排队延迟(queuing delay)等参数的仿真曲线,并对结果进行分析。 (2)如果公司的用户数增加到30人,网络改用交换机的方式连接,可自主增加网络模块,请分析相同的性能参数的仿真曲线,并对结果进行分析。

课程设计(学年论文)摘要(中文): 网络仿真是一种利用数学建模和统计分析的方法模拟网络行为,从而获取特定网络特性参数的技术。OPNET 仿真模型库为客户提供了一系列的仿真模型。在这些仿真模型的基础上,实现对网络的仿真。OPNET是一个网络仿真技术软件包,它能够准确地分析复杂网络的性能和行为,在网络模型中的任意位置都可以插入标准的或用户指定的探头,以采集数据和进行统计。通过探头得到的仿真输出可以以图形化显示、数字方式观察、或者输出到第三方的软件包去。本设计是在opnet 的基础上对网络进行的一系列仿真来研究网络的各项参数。 关键词:OPNET 网络仿真 课程设计(学年文)摘要(英文): Network simulation is a use of mathematical modeling and the method of statistical analysis simulation network behavior, and get a particular network characteristic parameters of the technology. OPNET simulation model for the customer provide a library of simulation model. On the basis of the simulation model, and to realize the network simulation. OPNET is a network simulation technology packages, it can accurately analyse complex network performance and behavior, in the network model of arbitrary position can be inserted into the standard o r user specifies the probe to collecting data and statistics. Through the probe of the simulation output can get to the graphic display, digital way observation, or output to the third party software package. This design is in On the base of the network opnet a series of simulation to study the parameters of the network. Keywords: OPNET network simulation 5

基于OPNET的网络仿真及分析

摘要 摘要 在计算机和通信网络系统结构的设计和测试过程中,常常要进行大量的仿真分析,OPNET软件是一种基于离散事件的商业仿真软件,它可以方便的进行网络规划设计和相关协议的开发。鉴于此,我们详细的描述了OPNET的仿真机制和仿真流程。 TCP/IP协议栈是当今互联网中广泛使用的协议栈。作为传输层协议,与UDP 协议不同,TCP可以在不可靠的网络环境中提供端到端的可靠传输。目前存在多个TCP版本,不同TCP版本中因其实现算法不同,在性能上有不同的表现。 本论文首先利用OPNET软件,仿真一个小型局域网的扩展,来展示OPNET 仿真软件在网络规划中的应用。然后详细描述了Tahoe、Reno、New Reno和SACK 四个版本的TCP协议中的拥塞控制算法。在此基础上,利用OPNET 软件仿真了以上四个版本的TCP在不同网络环境下的性能,并对仿真结果进行了比较和分析。 关键字:OPNET仿真TCP协议拥塞控制

ABSTRACT ABSTRACT During the process of designing and testing on the computer and communication network system, we often need a lot of simulations. OPNET Modeler is a discrete event_based commercial simulation software, which can be convenient for planning and design of network and development of related agreements. So we describe the simulation mechanism and simulation flow in detail. TCP/IP protocol stack is a widely used Internet protocol stack currently. As a transport layer protocol, TCP is different from UDP protocol. It can provide reliable end to end transmission in an unreliable network environment. Now, there are multiple TCP versions, and their performance is different with the different realization algorithm. In this paper, firstly we simulate an extension to a small local area network with OPNET Modeler for showing the application of OPNET Modeler in the networking planning. Then we particularly describe the congestion control algorithm in these four versions of TCP protocol, Tahoe, Reno, New Reno and SACK. Based on the study above, we simulate the performance of the four versions of TCP in different network environment with OPNET Modeler, then compare and analyze the result. Keywords: OPNET simulation TCP protocol congestion control

基于OPNET的网络模型仿真

基于OPNET的网络模型仿真 类别:通信网络阅读:855 1 引言计算机仿真已经成为研究计算机网络的一种非常有效的评估工具。随着通信技术的发展,通信网络的结构和规模越来越复杂,基于网络的应用也越来越多样化,单纯地依靠经验进行网络的规划和设计、网络设备的研发以及网络协议的开发,已经不能适应网络的发展需要。因而急需一种科学的手段反映和预测网络的性能,这导致网络仿真技术的应运而生。 网络仿真技术是一种通过建立网络设备和网络链路的统计模型,并模拟网络流量的传输,从而获取网络设计或优化所需要的网络性能数据的仿真技术。它以其独有的特点能为网络的规划设计提供客观可靠的定量依据。它能为网络提供接近真实环境下的模拟试验环境和辅助测试手段,验证网络的基本使用效能、网络可靠性以及提供各种新技术体制的试验环境。 网络仿真的优点使其一出现就得到迅速的发展,目前世界上的一些主流仿真软件均采用面向对象的智能化分布式并行仿真技术,如美国OPNET Technology公司的网络仿真产品OPNET。 2 OPNET特点和仿真方法OPNET Modeler作为一种主流网络仿真软件,为通信网络和分布式系统的建模提供全面的模拟仿真开发环境。OPNET通过执行离散事件仿真来分析各种模拟系统的行为和性能。OPNET Modeler将各个仿真研究阶段所需要的工具相结合,组成一个由模型设计工具、仿真核心、数据收集工具和数据分析工具有机结合起来的大型仿真系统。 2.1 特点作为广泛应用的系统开发平台,OPNET Modeler的主要特点如下:(1)层次化、模块化的建模机制。在OPNET Modeler中,采用与实际系统相类似的层次化结构建模。最下层是进程域模型,用有限状态机、C或C++以及OPNET自带的核心函数实现各种协议算法。第二层是节点域,由能实现不同功能的模块组成,反映设备的硬件和软件特性。最上层利用各种网络设备模型、映射现实网络。 (2)面向对象的建模方式。OPNET Modeler采用面向对象的方式建模。每类节点用相同的节点模型,再针对不同的对象设置特定的参数。 (3)丰富的模型库。OPNET Modeler提供标准模型库,包括x.25,ATM,Ethernet,TCP /IP等现有设备的标准模型库,同时还有3COM,Cisco,Sun等多个厂家的现有设备。 (4)图形化的建模方式。不论是网络域、节点域和进程域,还是传输链路、网络中流动的包等,OPNET Modeler均采用图形化的编辑器完成模型的构建。 (5)灵活的建模机制。在进程域中,采用有限状态机和C/C++以及OPNET Modeler 自身所提供的400多个核心函数可以实现自定义设备,或者根据协议、算法,开展协议研究等。OPNET Modeler中的源代码完全开放,用户可以根据需要添加、修改源代码。 (6)统计数据的生成。仿真期间,用户能够自定义要收集的统计数据。 (7)综合分析工具。在OPNET Modeler中,包括如ACE、网络医生、流分析等多个数据分析工具。这些工具为网络仿真设计的准确性、可信性提供网络诊断。同时还可以进行详细的网络性能分析。

基于OPNET的网络仿真

基于OPNET的计算机通信网建模研究 刘慧娟 (陕西理工学院物理与电信工程学院通信1101班,陕西汉中723003) 指导教师:王战备 [摘要]计算机通信网涉及通信与计算机两个领域,计算机与通信的结合是计算机通信网产生的主要条件,基于计算机平台,借助于相关的网络仿真工具软件,可以大大减化网络规划设计的复杂度,降低了网络开发的周期和成本。本次课程设计以典型的网络仿真工具软件Opnet14.5版本为基础,基于该软件环境建立一个计算机通信网络模型,设置相应地网络设备参数,仿真验证不同参数环境下网络性能变化,进一步验证仿真软件环境下实现计算机通信网建模与性能分析的可行性. [关键词]opnet;仿真;网络建模;分析

Modeling and simulation of communication engineering based on OPNET Liu Huijuan (Grade1101,Class1,Major of Communication Engineering,School of Physics and telecommunication Engineering of Shannxi University of Technology, Hanzhong 723003,China) Tutor: Wang zhanbei [Abstract] Computer communication network involved in communication and computer two fields, the combination of computer and communication is the main conditions of production of computer communication network, based on computer platform, with the help of the relevant network simulation tools software, can greatly reduce the complexity of the network planning and design, reduces the network development cycle and cost. The curriculum design in a typical network simulation tools software Opnet14.5 version as the foundation, based on the software environment to establish a computer communication network model, set up corresponding network equipment parameters, the simulation verification network performance under different parameters of environment change, further verify the simulation software environment to realize the feasibility of computer communication network modeling and performance analysis. [key words] opnet. The simulation; Network modeling; Analysis of the

基于OPNET的无线移动自组织网络

基于OPNET的无线移动自组织网络 1 引言 课题研究的背景及意义 最近几年来,随着Internet的发展,连入网络的主机和用户数目逐年呈指数增长。网络的普及为我们的生活带来了许多方便而快捷的服务,如下载网上信息、收发电子邮件、实现远程办公等等,人们变得越来越依赖于计算机网络。与此同时,移动计算机网络业务也逐渐成为人们日益关注的话题。在网络中提供移动性支持可使网络用户在任何时刻、任何地点通过网络发送和接收各种数据,实现人们提出的“Anytime, Anywhere, Mobile Networks in your pocket”的愿望。 无线移动自组织网络作为移动计算机的一种特殊形式,由于它不需要固定的基站,各个节点均可自由移动,且能实现动态的连接,加上其具有生存性极强,且创建与移动极为方便的特点,使之弥补了蜂窝系统与有线网络的不足,在许多特殊情况下有着不可替代的作用。可广泛应用于国防战备、灾难援助、法律执行等无法得到有线网络支持或某些只是临时需要通信但建立有线通信网络代价太大的环境,且可以作为生存性极强的后备网络[2]。因此,移动自组网的研究对科技进步具有重大促进作用。同时,随着移动自组网络研究的发展和相关产品的成熟,移动自组网必将越来越受到人们的重视,会有越来越多的应用领域,因而其具有广泛的研究与发展前景。而天线模型作为影响网络性能的一个重要因素,是确保移动自组网络正确运行的关键。对该领域进行深入而广泛的研究将为移动自组网的应用提供重要科学依据[3]。 无线移动自组织网络网络的特征 无线移动自组织网络是一种不同于现有网络的特殊无线网络,强调无中心接入、多跳路由,移动终端节点不仅具有主机的功能,还具有路由器的功能。 无线移动自组织网络是由一些带有无线收发装置的移动节点,通过无线信

相关主题
相关文档
最新文档