基于OPNET的网络仿真及分析

基于OPNET的网络仿真及分析
基于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

目录i

目录

第一章绪论 (1)

1.1 OPNET Modeler概述 (1)

1.2 TCP协议概述 (2)

1.3 研究的意义 (2)

1.4 本文的主要工作和内容安排 (2)

第二章OPNET Modeler仿真 (5)

2.1 OPNET Modeler安装说明 (5)

2.2 OPNET Modeler中的基本概念 (5)

2.3 OPNET Modeler仿真机制 (7)

2.4 OPNET Modeler仿真流程 (9)

2.5 用OPNET Modeler做小型局域网规划仿真 (10)

第三章TCP协议分析 (13)

3.1 TCP协议详解 (13)

3.1.1 TCP为应用层提供的服务 (13)

3.1.2 TCP首部各字段 (14)

3.1.3 TCP状态转移图 (16)

3.2 各版本TCP协议中的拥塞控制算法 (17)

3.2.1 Tahoe版 (17)

3.2.2 Reno版 (18)

3.2.3 New Reno版 (19)

3.2.4 SACK TCP (20)

第四章基于OPNET的TCP协议仿真 (21)

4.1 OPNET Modeler中支持TCP协议的节点模型 (21)

4.2 TCP协议仿真 (22)

4.2.1 仿真网络模型 (22)

4.2.2 仿真配置 (23)

4.2.3仿真结果分析 (24)

第五章总结与展望 (31)

ii

目录

5.1总结 (31)

5.2进一步的工作 (31)

致谢 (33)

参考文献 (35)

第一章绪论 1

第一章绪论

本文主要分析了用OPNET进行TCP协议仿真的结果。本章首先简单的介绍了OPNET Modeler的基本特点,TCP协议的功能和版本信息,最后简述了本文的结构安排,是后续章节的简单概括。

1.1 OPNET Modeler概述

OPNET Modeler是由OPNET Technologies公司研制和开发的网络仿真软件。它通过执行离散事件仿真来分析各种模拟系统的行为和性能。OPNET Modeler将各个仿真研究阶段所需要的工具整合起来,组成了一个从模型设计工具到仿真核心、数据收集工具和数据分析工具有机结合的大型仿真系统。

OPNET Modeler作为一个大型的网络开发工具,具有的特征如下:

面向对象:OPNET Modeler创建的所有系统都有一系列属性可以配置的对象组成。

分级模型:OPNET Modeler中的模型是分级设计的,与实际通信网络的分级结构自然对应。在2.2节中将详细描述。

图形化编辑:在工程建模的大多数环节中,可以使用图形化编辑器来定义和编辑模型,因此具有良好的用户接口。

方便的综合仿真和分析工具:OPNET允许用户统计自己感兴趣的数据量,在仿真过程中自动收集,并且根据收集到的数据量对仿真结果进行图形化比较和性能评估。另外OPNET还支持动画,来动态的观看统计量的变化。

有限状态机(FSM):OPNET Modeler使用有限状态机来对协议和其他过程进行建模,在有限状态机的状态和转移条件中使用C/C++语言进行描述,可以按需求控制仿真的详细程度。

应用编程接口(API):OPNET提供许多应用编程接口,以便用户编程进行扩展。使用应用编程接口也是OPNET与其他仿真工具进行结合、协同仿真的一种重要手段。

OPNET的应用很广泛,典型的应用有网络规划、通信体系结构和协议的研发、分布式传感器网络和片上系统、通信系统排队论研究、无线网络和卫星网络的研

2

基于OPNET的网络仿真及分析

究等。

1.2 TCP协议概述

TCP,全称是Transfer Control Protocol,中文名是传输控制协议,它工作在TCP/IP协议栈的传输层,提供面向连接的端到端的可靠传输服务。目前很多的应用程序都是基于TCP协议进行传输的,如Telnet、FTP、SMTP等。TCP的工作是建立连接,然后为应用层程序接收和发生数据。在发送的过程中,发送方会等待接收方给出一个确认性的应答,否则发送方将认为此数据丢失,并重新发送此数据。所以在TCP协议中涉及到了报文的标识、报文的确认、报文的有序发送、拥塞识别、拥塞控制等保证TCP健壮性的逻辑。

TCP协议在发展的过程中,逐渐的完善,围绕上述逻辑,提出了很多种改进方案,现在使用的主要有Tahoe、Reno、New Reno、SACK这四个版本。还有一些改进算法,如Nagle、ECN、Karn等,这些算法增强了TCP的性能。在第三章中,将详细描述TCP协议以及每个TCP版本中的拥塞控制算法。

1.3 研究的意义

OPNET作为网络仿真领域中的重要仿真工具,可以利用它通过数学建模和统计分析的方法来模拟网络行为,从而很好的理解网络运行情况和分析相应的协议。OPNET Modeler中的TCP实现模型参考了RFC文档,学习TCP代码可以加深对TCP算法的了解,从深度上对网络有新的认识。

目前国内外存在很多对TCP进行研究的组织,他们试图通过改进TCP中的某个或某些算法,来提升TCP性能同时又要保证和现存TCP的兼容性。但成果并不是很明显,工程意义不是很大,所以在本论文中,我们仅对TCP的经典算法进行了研究,这具有重要的实践和工程意义。

另一方面,目前利用OPNET对TCP进行网络仿真时,多采用添加丢包器,而针对IP互联网的TCP网络仿真比较少。为了分析TCP各个版本在IP网络中的性能,更加真实的接近现实网络,本文进行了IP网络下的TCP性能仿真。

1.4 本文的主要工作和内容安排

本文的主要工作:

学习了OPNET的仿真机制,查看了OPNET的英文帮助文档,对OPNET仿

第一章绪论 3 真有了一个整体的了解。然后进行了小型局域网的仿真,解决了网络规划中的一个重要的what-if问题。接着分析了不同TCP版本中的拥塞控制算法,然后用OPNET Modeler进行了TCP的业务流仿真,得到并分析了仿真结果。

全文共分五章,内容安排如下:

第一章:简要介绍了OPNET的特点和应用、TCP的特点和发展情况,并介绍了本文的组织结构。

第二章:详细OPNET的仿真环境和仿真步骤,然后对小型局域网的扩展规划进行了仿真模拟。

第三章:详细介绍TCP协议,并且对TCP各个版本中的拥塞控制算法进行了详细的描述。

第四章给出了OPNET Modeler中TCP进程模型的架构,分析了与TCP协议相关的两个进程模型,并对第三章中的各个版本的TCP进行了仿真,最后对仿真结果进行了比较分析。

第五章:对文章进行了总结并提出了需要进一步改进的方面。

4

基于OPNET的网络仿真及分析

第二章OPNNET Modeler仿真 5

第二章OPNET Modeler仿真

本章首先介绍了OPNET Modeler的安装环境和方法,然后描述了OPNET中的基本概念、仿真机制和仿真流程,最后给出了用OPNET Modeler进行小型局域网仿真的具体实例。

2.1 OPNET Modeler安装说明

OPNET Modeler支持Windows和UNIX操作系统平台下的安装,它在Windows 操作系统平台下安装过程比较简单。另外OPNET Modeler支持标准的C/C++语言,但是它本身不带编译器,所以需要和别的编译器协同工作。在Windows平台上,使用Microsoft的VC作为C/C++编译器。目前支持的VC版本有:Microsoft Visual C++6.X或者Visual https://www.360docs.net/doc/b05766427.html,。OPNET有不同的版本,在本论文中,我们使用14.5版本和Visual C++6.0组合。

下面说明Windows XP下的安装OPNET Modeler 14.5的过程。

(1)、安装Visual C++6.0,安装过程中会提示是否需要注册环境变量(Register Environment Variable)的对话框,选择此选项,并点击“确定”按钮。

(2)、正确安装VC++后,安装Modeler。

执行modeler_145a_PL1_7166_win.exe,按照提示安装OPNET Modeler软件,最后选择License类型时,选择Standalone模式。

执行modeler_doc_28-Jan-2008_ win.exe和models_145A_PL1_27Feb08_

win.exe按照提示安装文档和库文件。

将Crack目录下的所有文件拷贝到下面目录中:C:\Program Files\OPNET\ 14.5.A\ sys\pc_intel_win32\bin;从“开始”菜单启动OPNET Modeler,运行License Management和bin目录下的Mk_Lic.exe来产生License,至此OPNET Modeler

安装完成。

完成后在安装目录下有Models文件夹和sys文件夹,其中Models中包含OPNET自带的各种协议模型,sys中包含与系统相关的函数。

2.2 OPNET Modeler中的基本概念

在利用OPNET进行网络仿真之前,为了统一专用词汇,我们需要介绍OPNET

6

基于OPNET的网络仿真及分析

Modeler中常用到的仿真概念[1]。

1、项目(Project)与场景(Scenario)

在OPNET中仿真是以项目的形式进行的,一个项目就是一组仿真环境,而场景就是项目中的一个仿真环境。场景是网络的一个实例,一种配置,具体的来说就是拓扑结构、协议、应用、流量以及仿真的设置。用OPNET Modeler仿真时,最高层次是一个项目,每个项目下至少包含一个仿真场景,代表网络模型,它是具体的网络仿真环境的配置。项目提出的初衷是方便对不同场景的仿真结果进行比较。项目提供场景复制功能,可以对场景进行备份,通过修改新场景的参数运行仿真来测试系统各个方面的功能及是否存在瓶颈。

2、子网(Subnet)

OPNET中的子网和TCP/IP中的子网不是同一个概念。OPNET中的子网是将网络中的一些元素抽象到一个对象中去。子网可以是固定子网、移动子网或者卫星子网。子网不具备任何行为,只是为了表示大型网络而提出的一个逻辑实体。

3、节点(Node)

节点通常被看作设备或者资源,由支持相应处理能力的硬件和软件共同组成。数据在其中生成、传输、接收并被处理。Modeler包含三种类型的节点:第一种为固定节点,如路由器、交换机、工作站、服务器等;第二种为移动节点,如移动台,车载通信系统等;第三种为卫星节点,代表卫星。每种节点所支持的属性也不尽相同,如移动节点支持三维或者二维的移动轨迹,卫星节点支持卫星轨道。

4、链路(Link)

相对固定节点、移动节点以及卫星节点,链路也有不同的类型,有点对点的链路、总线链路以及无线链路。点对点的链路在两个固定节点之间传输数据;总线链路是一个共享媒体,在多个节点之间传输数据;无线链路是在仿真中动态建立的,可以在任何无线的收发信机之间建立。卫星和移动节点必须通过无线链路来进行通信,而固定节点也可以通过无线链路建立通信连接。

5、仿真随机种子(Seed)

Seed是产生随机数的种子值,反映随机数的状态。只要选定一个种子值,整个随机事件系统就固定了,复杂仿真的随机过程就成了一次实现。采用仿真种子的目的是测试仿真系统的稳健性,如果针对不同的Seed值进行一系列仿真,每次不同Seed值对应的仿真结果相近,则表明建立的模型有较高的稳健性

第二章OPNNET Modeler仿真7

(Scalability),否则说明模块有疏漏,所得的结果只是一个特例,不能反映系统的性能。

6、应用定义和分布定义:

OPNET Modeler中用于仿真的业务是通过应用定义(application definition)和分布定义(profile definition)来创建和产生的。

应用定义的作用是为网络仿真设置所需要的网络应用。OPNET Modeler软件已经定义了8种标准的应用,其中数据库、电子邮件、文件传输、视频会议、Web 访问为常见的网络应用类型。除此之外,OPNET Modeler还支持用户自定义应用。通过选择application definition中的属性就可以选择业务仿真所需要的标准网络应用或定义自己的应用。

分布定义的作用是为应用定义中设置的每类应用定义业务规格,具体包括操作模式、应用的启动时间、持续时间、可重复性以及重复业务之间的时间间隔等参数。

对于每种应用(如FTP),可以定义多个不同业务规格的分布,每个应用服务器可同时指定多种应用,每个客户端可同时指定多个分布。应用与分布之间通过应用名(application name)关联,服务器与应用之间也通过应用名关联。客户端和分布之间通过分布定义中使用的分布名(profile name)实施关联。在进行应用和分布定义以及对象关联过程中应按照定义应用、定义分布、定义关联的先后次序进行相关的操作。

2.3 OPNET Modeler仿真机制

OPNET Modeler采用分层的模拟方式。从协议间角度看,节点模型的分层思想与协议的分层思想互相对应:业务层->TCP层->IP层->封装层->ARP层->MAC 层->物理层。从网络物件层次关系看,它采用由微观到宏观的建模方式来模拟现实网络,分为进程(Process)、节点(Node)、网络(Network)三个层次,用不同级别的模型来描述一个网络仿真模型的不同方面。上层的模型利用下层得到的实体模型进行建模,使其逐步接近现实网络。

在建模过程中与三个物件层次对应的三个主要的编辑器是:进程编辑器、节点编辑器和项目编辑器。如图2.1所示。

下面将详细描述三个编辑器的主要作用。

基于OPNET的网络仿真及分析

8

进程编辑器(Process Editor):节点模块包括很多模块,这些模块的行为通过进程模型来定义。进程模型通过有限状态机(FSM)表示,使用有限状态机可以有效的支持规范、协议、应用、算法及排队的策略。它使用图形化的状态和状态转移条件来定义一个事件的逻辑。每个状态使用C/C++语言,利用专门为协议设计提供的丰富的函数库来完成事件的控制。有限状态机是动态的,可以在仿真中对其他有限状态机引起的事件进行响应。用户可以使用OPNET模型库中自带的进程模型,也可以使用进程编辑器开发自己全新的进程模型。

建立进程模型建立节点模型建立项目模型对应于进程编辑器对应于节点编辑器对应于项目编辑器

图2.1 物件层次及对应的编辑器

节点编辑器(Node Editor):节点是网络模型中的对象,节点编辑器用来定义每个网络对象模型。它使用不同的模块来描述节点对象的不同行为,展示网络设备和系统的的体系结构。这些模块一般模拟节点行为的一个或几个方面,如数据的创建、数据存储等。模块之间通过包流或者统计线进行连接,一个网络对象通常有多个典型的模块组成,来定义它的行为。

项目编辑器(Project Editor):用来开发一个网络模型,是OPNET中最上层的编辑器,它可以从每个网络对象或者整个网络中选择统计量,然后运行仿真,最后查看比较结果。工作流如图2.2:

建立网络模型收集统计数据运行仿真分析仿真结果

图2.2项目编辑器的工作流

OPNET的这种层次结构,与现实网络环境和系统的体系结构的分层模式相对应,可以非常简单的将实际的系统映射到仿真环境中,使得仿真环境能在最大程度上接近实际的网络环境或系统的体系结构,从而提高仿真结果的可用性。

从驱动仿真的过程来分析,事件驱动是OPNET软件运行仿真的基本机制。OPNET采用离散事件仿真机制,仿真依靠事件的发生来驱动,仿真时间靠仿真事

第二章OPNNET Modeler仿真9 件的发生来推进。这种方法将仿真分解为独立的点,而事件将分别在这些点上发生。OPNET依照时间,将这样的点与事件相关连。每个事件代表了模型中状态变化或选择的需求。采用离散事件进行仿真,OPNET可以动态的模拟实际系统的行为。这种基于离散事件驱动的模拟机制,与基于时间驱动相比,计算效率得到很大的提高,减轻了对处理器的要求。

2.4 OPNET Modeler仿真流程

OPNET Modeler为通信网络和分布式系统的建模和性能评估提供了一个综合的开发环境和分析平台。在进行具体的网络仿真时,需要按照OPNET的仿真流程进行仿真。仿真流程可以使仿真思路清晰,结构明确,具有方法可依。典型的仿真流程如下:

1、了解需求:收集和分析网络工程设计文档;

2、建模:建立进程模型、网络对象模型和网络模型;

3、配置网络流量:配置应用、分布、背景流量来模拟实际网络环境中的负载情况;

4、仿真:定义要进行收集的数据,配置和运行仿真,自动收集统计数据;

5、数据分析:根据仿真收集到的数据,查看仿真效果,验证模型和仿真方法的正确性,或者比较设计方案的优劣,从而为解决实际网络中的问题提供帮助。

6、重复试验:根据数据分析的结果,调整网络设计或系统设计方案,反复试验,直到取得预期的效果。

仿真流程图如图2.3:

重复试验

了解需求建模配置网络流量仿真数据分析

图2.3 OPNET Modeler仿真流程图

在实际的操作中,网络仿真一般参考上面的典型流程。并且由于不可能通过一次仿真就能得到仿真目的,所以多次重复试验是合理的。当然具体的网络仿真流程需要根据具体的仿真需求和具体情况决定,上面所述的典型流程仅是仿真的参考流程模型。

10

基于OPNET的网络仿真及分析

2.5 用OPNET Modeler做小型局域网规划仿真

网络规划中通常要解决的问题是WHAT-IF问题,即如果这样设计,结果是什么样的。在OPNET Modeler软件中,通过在同一个项目中配置不同的场景,可以很容易地同时对多个场景进行仿真,并将得到的仿真数据进行比较,从而得到WHAT-IF的仿真分析报告。

在本文中我们需要仿真一个小型的星型局域网在通过一个路由器附加另一个星型网络的环境下,观察整个网络的延迟和服务器负载的变化情况,以便检测扩展网络带来的额外负载是否会严重影响网络性能。

用OPNET Modeler快速建立仿真所需的小型星型网络拓扑,选择适当的统计量,并对其进行仿真,最后分析仿真结果。由于不涉及到协议的分析和系统结构的改变,在这个网络的仿真过程中,我们使用OPNET自带的模型库,涉及到的仅是项目编辑器(Process Editor)。

下面给出网络模型参数:

场景(一):

星型网络采用典型的局域网配置,具有30个外围工作点,它们通过核心交换机(3C公司产品),利用10BaseT的链路连接,外围节点是Sm-Int-wkstn类型的节点,外接的服务器上Sm-Int-Server类型。

应用使用的是Sm-Int-Modle-list系列中自带的Sm-Applicatin-config应用定义,它采用了OPNET Modeler软件中自定义了的8种标准的应用。分布使用了自带的Sm-Profiie-config分布定义,通过查看属性可以发现Sm- Profiie-config中使用的应用类型是轻型数据库类型(Database Access light)。

场景(二):

场景(二)通过复制场景(一)来实现和场景(一)相同的部分,然后在场景(一)的基础上按照网络规划要求额外增加了一个星型小型局域网。增加的小型局域网采用与场景(一)类似的配置,包含15个外围节点,它们通过中心交换机(3C公司的产品),利用10BaseT链路连接。

为使两个局域网相连,中间利用Cisco的路由器进行路由选择。由于采用复制场景(一)的方法,场景(二)获得了与场景(一)相同的应用定义和业务定义配置。图2.4和图2.5是两个仿真场景的网络模型图。

第二章OPNNET Modeler仿真11

图2.4场景(一)的网络模型图

图2.5场景(二)的网络模型图

建立网络仿真模型后,我们需要定义用户统计数据量。在本文中,我们主要关心的是增加一个STAR型网络后对整个网络的延迟和服务器负载造成的影响,因此我们收集整个网络延时和服务器的负载两个统计量。运行仿真,收集得到的数据,通过比较结果,进行数据比较分别如图2.6和图2.7。

通过仿真结果比较可以看出,通过路由器增加一个小型的星型局域网,在轻型的数据库业务下,网络延时均在0.0004s左右,没有明显变化,服务器负载高于场景(一)(达到10000bits/sec),但是负载不会随时间继续增长,而是在一个固定值附近小幅波动。这个结果说明增加一个小型的局域网对现有网络的正常运行不会造成严重影响,因此可以进行网络的扩展。

12

基于OPNET的网络仿真及分析

图2.6服务器的负载统计量曲线

图2.7网络延时曲线

这个简单的网络仿真模型概要的说明了OPNET Modeler用于网络规划中的步骤,有效的解决了网络规划中的WHAT-IF问题。

第三章TCP协议分析13

第三章TCP协议分析

本章对TCP协议进行了详细的描述,包括TCP提供的服务、TCP首部字段作用和TCP状态转移图,最后详细描述了各个TCP版本中不同的拥塞控制算法。

3.1 TCP协议详解

本节将分三部分来介绍TCP,首先介绍TCP为应用层提供的服务,其次介绍TCP首部中的各个字段,最后给出TCP的状态转移图。

3.1.1 TCP为应用层提供的服务

TCP的一个主要目的是在进程间提供可靠的,安全的连接服务。为了在一个不可靠的网络中提供互相通信,它需要提供的服务有:基本的数据传输(Basic Data Transfer)、可靠性(Reliability)、流量控制(Flow Control)、拥塞控制(Congestion Control)、连接(Connections)、优先级和安全性(Precedence and Security)等。

具体的,在一个TCP连接中,TCP通过下列方式来提供端到端连接传输的可靠性:

1、应用数据被分割成TCP认为最适合发送的数据块,并且数据块长度将保持不变。由TCP 传送给IP的信息单位称为报文段或段(segment),TCP根据发送最大报文长度(SMSS)来表示TCP发往另一端的最大块数据长度,这个SMSS 可以在建立时协商也可以采用默认值(536个字节)。

2、当TCP发送一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重传这个报文段。重传策略在不同的TCP 版本中采用不同的算法,这个将在3.2中详细描述。

3、当TCP接收端收到发自TCP连接另一端的数据时,它将发送一个确认。这个确认不是立即发送,通常要推迟几分之一秒,用来累积确认,并且使用“捎带”方式。这从3.1.2节TCP首部字段中可以看出。

4、TCP将保存它的首部和数据的校验和。这是一个端到端的校验和,目的是检测数据在传输过程中的任何变化,如果收到报文段的校验和有差错,TCP将丢弃这个报文段和不确认收到的此报文段,希望发送端可以超时重发。

基于OPNET 的网络仿真及分析

14 5、由于TCP 采用IP 包来封装自己的数据,而IP 数据包的到达可能会失序,因此TCP 报文段的到达也可能失序,所以TCP 会将收到的数据进行重新排序,然后以正确的顺序交给应用程序。另一方面,IP 数据报会发生重复,TCP 的接收端必须丢弃重复的数据。

6、TCP 提供流量控制(Flow Control )。TCP 连接的每一方都有固定大小的缓冲区,TCP 接收端只允许另一端发送接收端缓冲区所能接纳的数据,这可以防止发送端发送数据过快,造成接收端缓冲区溢出,丢弃报文段,引起重传而造成网络负载加重。另一方面,TCP 使用拥塞窗口机制来控制发送数据的速率,拥塞窗口是发送方对感受到的网络拥塞的估计,通过这个可以减轻网络拥塞情况。具体的拥塞控制算法将在3.2节中详细描述。

3.1.2 TCP 首部各字段

用户数据封装在TCP 报文段中,前面添加TCP 首部,然后构成TCP 报文。整个TCP 报文被封装在一个IP 数据报中,然后IP 包在网络中传输。TCP 报文首部格式如图3.1,如果不计可选字段,它是20个字节。 16位源端口16位目的端口

32位序号

32位确认号

16位窗口大小

4位首部长度保留(6)位U A P R S F

R C S S Y I

G K H T N N 16位校验和16位紧急指针

选项(最多20个字节)

图3.1 TCP 报文首部格式[2]

每个TCP 首部中包含源端口和目的端口,用于寻找发送端和接收端的应用进程。这两个值加上IP 首部中的源IP 地址和目的端IP 地址唯一确定一个TCP 连接。

序号用来标识从TCP 发送端向TCP 接收端发送的数据字节流,它表示在这个报文段中的第一个数据字节,序号占32bit ,序号达到232-1后又从0开始。当建

第三章TCP协议分析15 立新的连接时,SYN标志置1,序号字段由这个主机产生的初始序号填充。

确认序号用来标识接收端期望收到的下一个序号,它等于上次成功接收到的数据字节序号加1,并且只有ACK标志为1时,此字段才有效。

首部长度字段给出首部中的4字节的数目,需要这个字段的原因是因为首部选项中的长度是可变的。因为这个字段占4bit,所以TCP首部最多有60个字节。其中正常TCP首部是20字节。

保留的6bit暂时未用,均为0,预留保留字段是为了以后TCP协议的扩充。

标志位共有6个,分别占1bit,它们可以同时被设置为1。标志位为1时,意义如下:

URG:紧急指针(urgent pointer)有效。

ACK:确认序号有效。

PSH:接收方应该尽快将这个报文段交给应用层。

RST:重建连接。

SYN:同步序号用来发起一个连接。

FIN:发送端完成发送任务。

TCP的流量控制由连接的每一端通过声明的窗口大小来保证,窗口大小单位为字节。窗口大小字段占16bit,所以窗口大小最大为65535字节,当窗口值大于此时,我们会启用窗口比例选项。

校验和包含了整个TCP报文段(TCP首部和TCP数据),这是一个强制性的字段,一定是由发送端计算和存储,并由接收端进行验证。

当URG标志置为1时,紧急指针有效。它是一个正的偏移量,和序号字段中的值相加表示紧急数据最后一个字节的序号,紧急指针是TCP中发送端向接收端发送紧急数据的一种方式。

选项是用来完善TCP协议而增加的一些字段,在实现过程中是可选的。常见的TCP选项有:SACK选项、MSS选项、时间戳选项、窗口比例选项等。

基于OPNET的网络仿真及分析

16

3.1.3 TCP状态转移图

CLOSED

CLOSE_WAIT

CLOSING

ESTABLISHED

SYN_SENT

SYN_RCVE

LISTEN

LAST_ACK

TIME_WAIT

FIN_WAIT_1

FIN_WAIT_2

起始点

超时

send:RST

r

e

c

v

:

S

Y

N

s

e

n

d

:

S

Y

N

,

A

C

K

r

e

c

v

:

R

S

T

recv:SYN

send:SYN,ACK

同时打开

app:被动打开

send:

a

p

p

:

s

e

n

d

:

S

Y

N

a

p

p

:

s

e

n

d

:

S

Y

N

主动打开

app:关闭

或超时

s

e

n

d

:

<

>

R

e

c

v

:

A

C

K

app:关闭

send:FIN

a

p

p

:

s

e

n

d

:

F

I

N

数据传送状态

r

e

c

v

:

S

Y

N

,A

C

K

s

e

n

d

:

A

C

K

recv:FIN

send:ACK

app:关闭

send :FIN

被动关闭

recv:ACK

send:<无>

recv:ACK

send:<无>

recv:FIN

send:ACK

R

e

c

v

:

F

I

N

,

A

C

K

s

e

n

d

:

A

C

K

recv:ACK

send:<无>

recv:FIN

send:ACK

主动关闭

同时关闭

客户端状态的正常变迁

服务器端状态的正常变迁

app:应用程序产生操作时发生的状态变迁

recv:收到报文段时发生的状态变迁

send:状态变迁时发送的内容

图3.2 TCP状态转移图[3]

TCP状态转移图其实就是一个有限状态机,它根据不同的触发条件在不同的状态之间进行转换。图3.2中共有十一个状态,其中我们用粗的实线箭头表示正常的客户端状态变迁,用粗的虚线箭头表示正常的服务器状态变迁。其他的一些

基于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网络仿真包交换

一、实验目的 1.学习熟悉使用OPNET仿真软件,实现对网络场景的仿真。学习并掌握包交换有线网络的基本知识。 2.数据包建模。学习并掌握数据包建模的基本方法和技能。 3.有线链路建模。学习并掌握有线链路建模的基本方法和技能。 4.中心交换节点建模 学习并掌握中心交换节点建模的基本方法和技能。包括hub进程建模和包流的连接。 5.周边节点建模 学习并掌握周边节点建模的基本方法和技能,包括: src进程建模; sink进程建模; proc进程建模;包流的连接。 6.网络建模。学习并掌握包交换有线网络建模的基本方法技能。 7.配置参数、运行和调试仿真 学习并掌握收集统计量、配置参数、运行和调试仿真的基本方法和技能。 8.仿真结果分析。学习并掌握仿真结果分析的基本方法和技能。 二、实验过程 专题1:实现包交换 1、定义包格式 (1)从File 菜单列表中选择Packet Format,单击OK 按钮。这时打开包格式编辑器。 (2)单击Create New Field 工具按钮,然后将光标移到编辑窗口中,单击鼠标左键,接着单击右键。这时一个新的包域出现在编辑窗口中。设置包域的属性,定义好的包域名称和大小。 图1.包格式定义 (3)从File 菜单中选择Save,命名包格式。 2、定义链路模型 (1)从File 菜单列表中选择Link Model,打开链路模型编辑器。

(2)找到链路类型支持属性框,设置支持的包格式,除了ptdup 外的链路类型对应的Supported属性设置为no,表明该链路只支持点对点双工连接。 (3)在packet formats 属性右边对应的Initial Value 栏中单击鼠标左键。“Supports All Packet Formats”和“Supports Unformatted Packets”复选框取消,同时将新增加包设置为Support。 图2.链路模型定义 3、创建中心节点 定义节点模型,中心交换节点:四对发信机和收信机(每对收发信机对应一个周边节点),一个中心交换处理进程(按地址转交包)。 (1)从File 菜单列表中选择Node Model,打开节点模型编辑器。 (2)在编辑窗口中放置一个进程模块,四个点对点发信机,和四个点对点收信机。 图3.中心进行模型定义 (3)给每个对象命名,并用包流将每个收信机和发信机和hub 相连。查看包流的连接情况。

OPNET网络仿真入门实例

OPNET网络仿真入门实例 OPNET简介 OPNET最早出自麻省理工学院的两个博士之手,最终得以商业化。OPNET被广泛应用于精确模拟领域,例如网络设备制造领域的企业商Cisco以及运营商AT&T,都采用OPNET来做各种各样的网络环境模拟和调试。在OPNET的各类产品中,Modeler几乎包含其他产品的所有功能,针对不同领域,主要的用途如下:(1)对于企业网的模拟,Modeler 调用自带的已经建好的标准模型组建网络,在某些业务应用达不到事先预想结果或服务质量未及规定要求,比如说网上电子交易过程中交易延迟、数据库服务等业务响应时间慢于正常情况时,Modeler捕捉重要的流量进行分析,从业务、网络、服务器三方面来找出瓶颈。(2)对于比企业网更复杂的运行商(ISP)网络的模拟,Modeler把焦点放在整个业务层、流量的模拟,使得运营商可以有效地查出业务配置中产生的错误,例如网络中的哪些服务器配置不够妥善,让黑客容易攻击,有哪些业务的参数配置不合适等情形。(3)针对研发的需要,Modeler提供了一个开放的环境,使用户能够建立新的协议和配备,并且能够将细节定义并模拟出来。为使读者有一个生动、形象、更明确的理解,我们再进行如下说明解释:Modeler 所能应用的各种领域主要包括三个方面即端到端结构、新的协议开发和优化、网络和业务层配合如何达到最好的性能。举例来说明一下吧,假设我们要将现有的IPv4的网络升级到IPv6的网络,需要确定采用哪种技术方式对转移效果来说比较好,这就属于端到端结构上的应用;新协议的开发,比如说目前流行的3G无线协议的开发,在系统级的仿真中,可以分析一种新的路由或调度算法如果使路由器或交换机达到QoS;在网络和业务之间如何优化方面,可以分析新引进的业务对整个网络的影响、网络对业务的要求,实际应用中网络和业务是对矛盾,通过Modeler模拟来查找网络和业务之间所能达到的最好的指标。 软件的安装 图1

浅析Opnet,Ns2,Matlab网络仿真工具

浅析Opnet,Ns2,Matlab网络仿真工具 【摘要】网络仿真可以有效提高网络规划和设计的可靠性和准确性,明显地降低网络投资风险,减少不必要的投资浪费。本文就常见的三种网络仿真工具(OPNET、NS2及MATLAB),从它们的基本情况及特点进行了分析。 【关键字】网络仿真;OPNET;NS2;MATLAB 引言 随着网络结构和规模越来越复杂化以及网络的应用越来越多样化,单纯地依靠经验进行网络的规划和设计、网络设备的研发以及网络协议的开发,已经不能适应网络的发展,因而急需一种科学的手段来反映和预测网络的性能,网络仿真技术应运而生。网络仿真可以有效提高网络规划和设计的可靠性和准确性,明显地降低网络投资风险,减少不必要的投资浪费。各种网络仿真工具在此背景下应运而生。本文就常见的三种网络仿真工具(OPNET、NS2及MATLAB),从它们的基本情况及特点进行了分析。 基本情况及特点分析 1.OPNET OPNET公司最初只有一种产品OPNET Modeler,到目前已经拥有Modeler、ITGuru、SPGuru、WDMGuru、ODK等一系列产品。 对于网络的设计和管理,一般分为3个阶段:第1阶段为设计阶段,包括网络拓扑结构的设计,协议的设计和配置以及网络中设备的设计和选择;第2阶段为发布阶段,设计出的网络能够具有一定性能,如吞吐率、响应时间等等;第3阶段为实际运营中的故障诊断、排错和升级优化。而OPNET公司的整个产品线正好能面向网络研发的不同阶段,即可以作网络的设计,也可以作为发布网络性能的依据,还可以作为已投入运营的网络的优化和故障诊断工具。OPNET公司也是当前业界智能化网络管理分析解决方案的主要提供商。 OPNET的主要特点: 层次化的网络模型。使用无限嵌套的子网来建立复杂的网络拓扑结构。 简单明了的建模方法。Modeler建模过程分为3个层次:过程(process)层次、节点(Node)层次以及网络(Network)层次。在过程层次模拟单个对象的行为,在节点层次中将其互连成设备,在网络层次中将这些设备互连组成网络。几个不同的网络场景组成“项目”,用以比较不同的设计方案。这也是Modeler建模的重要机制,这种机制有利于项目的管理和分工。

opnet网络仿真--小型星型网络的设计

郑州轻工业学院 Internet网高级技术课程设计任务书 题目opnet网络仿真--小型星型网络的设计 专业学号姓名 主要内容: 设计一个小型星形网络的拓扑结构,然后根据该拓扑结构在opnet 网络仿真平台上模拟仿真出星形网络,并查看其的运行情况。可以适当地增加网络服务和子网,然后对比一下网络的运行情况。分析和总结一下该网络拓扑结构的性能。 基本要求: 在opnet 网络仿真平台上实现下列要求: 配置一个小型的星形网络要求 1. 所有网络设备都与同一台交换机连接;2. 整个网络没有性能瓶颈;3. 要有一定的可扩展余地。 参考文献: 《OPENT网络仿真》陈敏 . 清华大学出版社.2004.4.1 完成期限:2010年7月2日 指导教师签名: 专业负责人签名: 页脚内容1

2010年7 月 2 日 页脚内容2

目录 1.建立网络拓扑结构 (4) 2.收集统计量 (14) 3.保存项目 (15) 4.运行仿真 (15) 5.查看结果 (18) 6.复制场景并扩展网络 (20) 7.再次运行 (22) 8.比较结果 (23) 9.再次复制场景 (25) 10.运行结果分析 (28) 11.总结 (28) 12.参考文献: (28) 页脚内容3

opnet网络仿真—小型星形网络的设计 运行OPNET Modeler网络仿真,配置一个简单的网络 1.建立网络拓扑结构 要创建一个新的网络模型,首先需要创建一个新的项目和一个新的场景。采用开始建立向导(Startup Wizard)来建立一个新的项目和一个新的场景。开始建立向导有以下几个步骤: (1)选择网络拓扑类型。 (2)设定网络的范围和大小。 (3)设定网络背景图。 (4)选择对象模型家族。 开始建立一个场景步骤如下: (1)打开Modeler。 (2)从File菜单中选择New...。 (3)从弹出的下拉菜单中选择Project 并单击OK。 (4)项目和场景选择默认的project1和scenario1 页脚内容4

通信网络仿真

目录 1 绪论 1.1 设计的背景 目前,现代通信网络的仿真,智能化网络规划、优化以及管理成为通信领域的热点问题。OPNET这一网络仿真工具为解决通信网络(包括固定网络、移动网络和卫星网络)仿真和优化以及网络高效的管理提供了整套解决方案,是网络仿真分析领域出类拔萃的软件。 包交换兼有电路交换和报文交换的优点,如包交换比电路交换的线路利用率高、比报文交换的传输时延小交互性好等,使得包交换网络在数据通信领域有着广泛的应用。 国外,网络仿真方面的研究已有二十多年的历史,覆盖各个领域。而国内数据通信网络仿真起步较晚,但近几年发展迅猛。 在包交换网络仿真方面,利用OPNET Modeler平台进行的仿真测试对包交换网络性能的进一步提高起到显著的作用。 在复杂多样的SME网络应用方面,相关研究缺乏,既使是已解决的部分技术项目,仍有进一步深入研究的必要。因而,研究包交换网络中OPNET的仿真应用是一个富有挑战性的课题。 1.2 设计的目的及意义 本课程设计主要研究SME包交换网络中OPNET的仿真应用,即借助OPNET仿真平台来研究包交换网络的性能。 本文中将主要解决如何使用现代化网络仿真工具进行SME包交换网络的性能分析,并在分析的基础处,能找出现有网络存在的不足,从而设计出更适合SME包交换网络的方案。 在学习通信网的基础上,学习通信网仿真方面的专业软件,对进一步掌握通信网络的性能有实践意义。掌握使用OPNET软件对以后的毕业设计及毕业后从事网络设计领域的工作有很大的帮助。 1.3 设计的基本思路及文章组织 本文在OPNET网络仿真平台上,首先对一个简单的SME包交换网络进行性能分析,然后对现有的网络进行升级扩展、引入新业务并进行可行性分析。在此基础上提出适合SME包交换网络的设计方案。

基于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第一个例子 Opnet网络仿真软件的使用

Opnet网络仿真软件的使用 1实验题目 Opnet网络仿真软件的使用 2实验目的和要求 1)采用Opnet构建网络拓扑 2)采用Opnet分析网络的性能 3实验设备及材料 操作系统:Windows 2003/XP主机 网络模拟器:OPNET 4实验内容 4.1 OPNET概述 1) 软件版本:OPNET 14.0 2) OPNET介绍 i) OPNET历史和现状 OPNET公司起源于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仿真结果的显示界面十分友好,可以轻松刻

计算机网络基于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仿真实验报告 课程名称:<<网络仿真技术>> 班级:网工二班 学号:913106840414 姓名:陈子州 指导教师:濮存来

1.OPNET仿真过程 1.1 建立网络拓扑结构 要创建一个新的网络模型,首先需要创建一个新的项目(Project)和一个新的场景(Scenarios)。 首先创建30台PC机的场景:1_first_30。 (1) 打开OPNET Modeler 10.0。 (2) 从File 菜单中选择New...。 (3)从弹出的下拉菜单中选择Project 并单击OK 按钮。 (4)将项目命名为1_sim_network,场景命名为1_first_30。 (5)单击OK 按钮。 按照向导创建网络拓扑图。 首先选择一个空的项目Create Empty Scenarios,然后选择办公网络Office,然后确定网络的大小100m×100m,然后选择OPNET自带的对象模型家族种类,将Sm_Int_Model_List设为Yes,最后确认场景,单击OK。 (6)使用快速拓扑配置,一次性创建规则的拓扑结构,从Topology 菜单中选择Rapid Configuration。 (7)从配置下拉列表中选择Star,单击OK。之后为该星形拓扑网络指定节点模型和链路模型。即Center Node Model设为3Com公司的交换机3C_SSII_1100_3300_4s_ae52_e48_ge3;Periphery Node Model 设为Sm_Int_wkstn;Link Model设为10BaseT,其中数量设为30。再合理设置位置和半径,单击OK。 这样项目编辑窗口中会出现包含有一台交换机和30台PC结点的网络拓扑图。 下面对上述该星形网络拓扑结构进行扩展。 (8)添加服务器。打开对象面板,找到Sm_Int_server 对象,并将它放置在工作空间中。单击右键,结束节点放置。 接下来,需要连接服务器和星型网络: (9)在对象模板中找到10BaseT 链路对象。在服务器上单击鼠标左键,移动光标,再单击星型网络的中心节点。这时出现连接两个节点对象的链路。单击鼠标右键结束链路创建。 最后需要为网络配置业务,包括应用定义(Application definition)和业务规格定义(Profile definition)。 (10)在对象模板中找到Sm_Application_Config 对象并将其放置在工作空间中。单击右键,光标重新移到对象模板中,单击 Sm_Profile_Config,并将其放置在工作空间中,单击右键。模板中应

(完整word版)包交换--OPNET网络仿真

重庆邮电大学研究生堂下考试答卷 2015-2016学年第1 学期 考试科目通信系统与网络仿真 姓名 年级 学号 专业通信与信息工程 2015 年12 月10 日

OPNET包交换有线网络建模与仿真实现 一﹑实验目的 1. 学习并掌握包交换网络的基本结构。 2.学习并掌握构建拥有子网的包交换网络。 3. 学习并掌握包交换网络外围节点及中心节点的建模方法。 4. 学习并理解外围节点及中心节点中进程的含义。 5. 学习并掌握链路的建模方法 6. 学习并掌握数据包的格式 7. 学习并掌握配置参数﹑收集统计量﹑运行和调试程序﹑并分析结果的能力。 二﹑实验过程 1.创建一个基本包交换网络 1.1创建新的包格式 在新建中创建一个数据包模块,定义名字为dest_address,大小为2。 1.2 创建链路模型 打开包格式编辑器,选择全双工方式,在链路转发包格式中选择自定义的包数据速率选择9600,取消链路的纠错功能,选择链路无干扰模式并选择 计算点对点的传输时延。 1.3 创建中心交换节点模型 创建节点交换模型需要定义节点模型和进程模型两步 1.3.1定义节点模型 中心交换节点模型由4对收/发信机以及一个中心处理机组成,然后使用数据包流连接相应的模块,为每个收发信机设置与链路相同的数据速 率9600,并选择自定义的数据包。 1.3.2 定义进程模型 中心节点进程模块将接收到的包按照目的地址转交给正确的发信机,然后通过发信机将包发送目的节点,中心节点进程模块通过包流与发信机和收信机相连,因为每个包到达都出发中心节点进程的一次中断,中心节点进程接收到中断后从休眠

状态激活执行代码处理包 (1)单击创建状态按钮,然后将光标移到编辑窗口中,单击鼠标左键,放置一个状态,然后单击鼠标右键,命名该状态为idle。 (2)建立状态转移: (3)在转移线上单击鼠标右键,从弹出的菜单中选择Edit Attributes,然后将转移的 condition 属性改为PK_ARRVL,并且将executive 属性改为route_pk()。 (4)接下来你需要定义PK_ARRVL 条件的宏 单击编辑头块按钮,输入定义宏PK_ARRVL 的代码 (5)为idle 状态创建一个指向自身的转移线。 (6)在转移线上单击鼠标右键,从弹出的菜单中选择Edit Attributes,然后将转移的condition 属性改为default,右击鼠标关闭对话框 (7)接下来你需要编写条件执行代码route_pk(),单击编辑函数块按钮 (8)更改进程的属性:从Interfaces 菜单中选择Process Interfaces,把begsim intrpt 属性的初识值改为enabled。 接下来,你需要编译模块: (9)单击编译进程模型按钮。 (10)需要将编译好的进程模型指定给节点模型: 从Windows 下拉菜单中选择Node Editors,然后找到_pksw_hub。 这时节点模型编辑器被激活,在hub 进程上单击鼠标右键,从弹出的菜单中选择Edit Attributes,将process model的属性值改为pksw_hub_proc,保存节点模型 1.4 创建外围节点 1.4.1定义外围节点模型 当周边节点生成一个包时,它必须给这个包指定一个目的地址,然后将它发 往中心节点。如果周边节点接收到一个包时,它必须计算该包的端对端延时。因此周边节点必须包括一个业务生成模块、一个进程模块和一对点对点收发信机来完成这些任务。

基于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网络仿真软件使用实例 一﹑仿真案例: 1.某个小公司现有职员10人,每个职员的计算机采用100 Mb/s集线器(HUB)的方式连接到一台服务器上。请你采用指定的仿真软件(推荐使用OPNET或者ns2),对于以上的具体环境(自己选定集线器和服务器的型号),进行网络性能的仿真,给出网络的信道利用率、吞吐量、传输时延、排队延迟(queuing delay)等参数的仿真曲线,并对结果进行分析。 2.如果公司的用户数增加到50人,网络改用交换机的方式连接,并且增加二﹑仿真过程 1.仿真模型的建立 案例1的仿真模型如图一所示。图中的node0至node9表示10个职员的计算机终端,LAN中的集线器(HUB)采用了ethernet16_hub;终端节点通过100_BASE_T 的双绞线与HUB连接。Server是LAN中的服务器。Application Config描述了LAN 中存在的服务应用的类型,Profile Config定义了客户机可以使用的服务类型,服务类型均定义为三种:Database,E-mail和FTP。 图一案例1的仿真模型 案例2的仿真模型如图二所示。图中的node0至node49表示了50个职员的计算

机终端,Switch是LAN中的交换机,选的类型是ethernet64_switch,它能连接64个终端,终端节点也是通过100_BASE_T的双绞线与Switch连接。WLAN_Router 作为无线接入点,在模型中有三个WLAN_Wkstn。Server﹑Application Config 和Profile Config的服务类型与案例1相同,这样便于图形的比较分析。 图二案例2的仿真模型 2.模型的仿真及仿真结果 如上建立仿真模型后,分别对案例1和案例2进行仿真,得到了网络的信道利用率,吞吐量,传输时延和队列大小等参数的仿真曲线。下面是对案例1和案例2参数曲线的比较与分析(图中的蓝线代表模型一的参数曲线,红线代表模型二的参数曲线)。 1)信道利用率比较图

基于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

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