分类: WINDOWS
2011-05-31 17:07:47
端对端业务也可称为客户/服务器模型下的业务,OPNET 已经为我们编写了一些常用应用的协议,并且将这些应用模块化,只要按照既定的流程设定一些参数就可以配置这类标准的业务,一般分为 4 个步骤:(1)定义应用;(2)设定业务主询;(3)配置服务器
支持的应用;(4)设定客户端业务主询。
1定义应用
应用(Application)具体描述应用的动作,比如说 http 应用,规定了每次取得页面的大小和时间间隔;对于 ftp 应用,规定上传和下载的流量,文件的大小和产生的事件间隔。
2 设定业务主询
业务主询(或称为业务规格),描述一类用户群所涉及的应用,因此包含了多个应用,例如校园用户上网所涉及的业务主要是 ftp、Email、http 等,而行政单位用户可能用到数据库(database)、远程登录(remote login)、Email、ftp 和http 等业务;同时业务主询也描述用户应用的行为,如用户什么时候开始使用某种应用,持续多久。例如校园网用户不限制ftp 流量,而政府机关出于安全性的考虑需要限制 ftp 流量。
下面我们对每个属性分别做说明。
(1)Start Time设定业务主询的开始时间,通常会设定成 100s,作为初始化预留时间,因为仿真开始时,所有的模块都需要一段时间初始化。例如 IP OSPF(开放最短路径优先)和 RIP(路由信息协议)可能需要上百秒时间来建立路由表,在此之前传输数据包,有可能会被路由器丢弃,因此所有业务必需在协议初始化完毕时才开始加载。另外值得注意的是,当仿真场景配置多种业务主询时,通常需要把它们间隔开来,比如开始时间设定为在100-110s之间随机选择一个时间点,这样不同的业务主询开始时间会稍微错开,否则如果整个业务都卡在 100s一个时间点上,仿真可能不会运行得很顺畅;
(2) Duration 业务主询加载多长时间,通常设定为仿真结束才终止(end of simulation);
(3)Repeatability指业务主询重复性设置,一般整个仿真就加载一次(once at start time)。如果设定 Number of Repetitions 大于 0,则重复多次,这时需要设置每次重复间隔时间Inter-repetition Time,及重复模式 Repetition Pattern。
其中 Serial 为首尾相连模式,前一个业务主询加载完毕并跨过重复间隔时间才开始下一个,值得注意的是如果业务主询得持续时间(Duration)设定为 end of simulation,则不会重复,因为一次主询结束仿真也结束了。
另外一种重复模式称为 Concurrent,可能前一个业务主询并没有结束,只是机械性地隔一段时间(Inter-repetition Time)又开始一个。
(4)Operation Mode 指应用运行模式,它只针对业务主询中包含两种或两种以上应用的情况,需要根据实际情况来选择运行模式。举例来说,如果业务主询包含 4 种应用,分别是 HTTP、FTP、Telnet 和 Email,实际中,可能同时上网,下载 FTP文件,上 BBS,收 Email,这时我们应该设置操作模式为同时加载模式(Simultaneous),当然也可以顺序执行业务(Serial),可能我们希望一个业务完成才加载后续的任务。具体选择何种方式要看如何才能模拟更真实的业务。
(5)Applications用来圈定业务主询包含的应用。
Start Time Offset代表应用的开始时间,注意不要和业务主询开始时间混淆,业务主询开始时间加上应用本身的开始时间才是业务真正的开始时间,例如业务主询开始时间为 100s,其中的某个应用开始时间为 5s,则该应用真正开始时间为 105s;
Druation 代表应用持续时间,可以设定业务主询时间多长应用也多长(End of Profile),或者规定时间;
Repeatability 设定应用的重复性,如图8-12 所示。它的机理与业务主询重复性类似,这里举例说明应用重复间隔和重复模式(Repetition Pattern)的作用。比如工程部业务主询包括 4 种业务,分别是 Database,Email,FTP,Web browsing,假如我们模拟从早上 9 点到下午5点这些业务的真实运作,可能 Database在开机时就一直运行,Email每隔 5 分钟收一次,FTP可能1个小时下载一次,也可能同时开多个线程下载,Web browsing也是隔一段时间看一次,因为上班时间不可能一直上网,我们也可以同时打开多个 IE浏览器上网。之后一个星期业务就可以重复这一天的业务情形。一方面我们要将业务主询的操作模式设定为 Simultaneous,因为这些应用是独立并同时运行的;另一方面,针对每种业务,我们也必须根据真实情况设定它的重复模式,每次重复的间隔,例如上述的 Email 重复间隔为 5 分钟,重复模式为 Serial;FTP重复间隔为 1 小时,重复模式设定为 Concurrent来模拟多个FTP线程。
3 配置服务器支持的应用
配置好应用参数和业务主询后,接下来就可以为服务器设定所支持的服务和应用有哪些,只要在应用配置物件中定义的业务都可以选。
一台服务器可以同时支持多种业务,例如一台服务器既可以作为 FTP server,也可以作
为 HTTP server。应用个数可以直接在 Rows 编辑栏中输入。
当选定好业务之后,点击服务器说明栏(Description)配置有关服务器对应用支持的参数。
Processing speed代表服务器处理交易的速度,具体设定多大的值要看达到的业务交易量有多大,Overhead 为 CPU 处理开销。这两个参数用来粗略地计算服务器 CPU 的表现,因为实际中业务最终的端对端性能不光是网络本身的问题,还要看服务器的性能。
Selection Weight 代表服务器被客户选中的比重,这是个非常重要的设置,当多个服务器同时支持某种业务时,客户具体向哪台服务器索取服务就根据这个比重值随机选取。它不是绝对值,而是相对值,一般预设值为 10,如果两台服务器都设定为10,则它们被选中的概率都是 50%,如果两台服务器都设定为 20,则结果还是一样。
Type of Service 指定服务器能够提供的TOS,一般的设定为满足客户所需求的值(As Requested by Client)
除了有对 CPU粗略模拟的两个参数外,还可以一个专门设定 CPU参数的属性栏。
CPU Background Utilization模拟 CPU背景使用率,通常来说,我们配置的业务是网络中传输的业务,而这里模拟的背景业务是本地业务,不需要消耗网络资源,只是单机运行的业务。其中time为背景业务的开始时间, background untilization为CPU被占用率。假如我们想模拟80%CPU被本地业务占用后,剩下 20%CPU处理能力能否支持网络的应用。另外我们也可以通过这种方法快速模拟出服务器瓶颈。
CPU Resource Parameters 可以设定 CPU的个数(Number ofResources),CPU跳频倍率(Processing Speed Multipler),另外多 CPU还需要多线程支持,表现方式和应用方式要匹配,这点非常重要,在 Multi-tasking Performace 必须相应设置多线程处理方式,否则多 CPU的配置效果发挥不出来。TaskContention Mode决定是否模拟 CPU处理竞争的所引入的延时。
4 设定客户端业务主询
与服务器配置应用相对应,客户端则需要设定业务主询。可供客户端选择的业务主询的种类和在业务主询配置器中的设定完全吻合。
同时客户端可以配置多种业务主询,例如一个客户,他既可以是工程部的人,同时也可能是业务部的人,因此他需要同时配置这两个部门所对应的业务主询。配置业务主询后,客户端可能还要设定 Application: Destination Preference,它表明从哪些服务器上取得特定业务的服务,其中 Symbolic Name对应 Application Config中针对某种应用所定义的象征性名称,客户端 Symbolic Name 如果设定为“Video Destination”,则意味着它想得到VideoConferencing这种应用服务,因为在Applcation Config 中业务定义表中可以找到与“Video Destination”关联的应用为 Video Conferencing。
接下来我们需要将象征性名称与实名进行映射,这种映射不只局限于一对一,而且可以一对多,我们可以加入 3 个服务器来支持某种应用,它们分别为 Server 1、Server 2、Server 3,这三个名称才是服务器真正的名称,我们可以在相应服务器的 Server Address 属性中找到它,映射了多个服务器之后就出现一个问题,既然客户都可以想这些服务器索取服务那么该选择哪一台呢?这时我们需要设定服务器被选择的比重(Selection Weight),选择比重是相对值,设定后,每台服务器被选中的概率是相同的。另外服务器端的 Application: Source Preference设定原理同上。
针对不同业务需要配置的传输协议(TransportProctol Specification)也不同,例如对于延时敏感的视频业务需要启用 UDP 协议,而 Email、FTP 等业务更侧重于业务准确性,则选择 TCP协议。Application Segment Size指定应用层数据包的最大值极限,如果Application Config 中配置的封包大于这个门限就要分段。
【注】在 OPNET 中,服务器和客户端的概念不是分得很清楚,例如一台服务器在提供某种应用服务的同时也可以作为另一台服务器的客户,同样道理,一个客户端同时也可以作为服务器使用。但是有一点是肯定的,一个物件设定了Application: Supported Profiles和 Application:Destination Preference(可设可不设)之后,它肯定是某个物件的客户,同样道理,一个物件设定了 Application: Supported Services和 Application: SourcePreference(可设可不设)之后,它肯定是某个物件的服务器。