ImageVerifierCode 换一换
格式:DOCX , 页数:9 ,大小:130.96KB ,
资源ID:5425619      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5425619.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(D1MD1MM1排队性能分析.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

D1MD1MM1排队性能分析.docx

1、D1MD1MM1排队性能分析通信网仿真与NS仿真器大作业 D/D/1、M/D/1、M/M/1排队性能分析姓名:黄颢学号:1011010303班级:通信三班 2012年2月一、总体目标获得D/D/1、M/M/1、M/D/1等不同排队系统的吞吐量与流入负载的变化关系。二、任务分配:针对本次作业,将本组所有成员分成三个小组:第一小组的主要任务是负责D/D/1、M/M/1、M/D/1等不同排队系统业务源的生成。第二小组的主要任务是在第一小组工作的基础上对模拟环境所生成的数据进行记录并做后续的数据处理。第三小组的主要任务是在前两个小组的任务完成之后,进一步讨论实验结果,并在最后撰写实验报告。三、实验环境

2、Unbuntu平台下的NS、Gnuplot。其中Ubuntu的版本为11.10、NS的版本为2.34、Gnuplot的版本为4.4。四、D/D/1、M/D/1、M/M/1排队系统的概述排队论(queuing theory), 或称随机服务系统理论, 是通过对服务对象到来及服务时间的统计研究,得出这些数量指标(等待时间、排队长度、忙期长短等)的统计规律,然后根据这些规律来改进服务系统的结构或重新组织被服务对象,使得服务系统既能满足服务对象的需要,又能使机构的费用最经济或某些指标最优。 排队模型的表示方法:M= 指数分布 D= 确定型分布M/M/1:数据进入队列的概率服从泊松分布,数据离开队列的概

3、率亦服从泊松分布,且只有一个队列。由随机过程知识可知数据到达的时间间隔服从指数分布,数据离开队列的时间间隔也是服从指数分布的,而在在队列处理能力一定的基础上,数据离开队列的时间间隔与其大小有正比关系,故可将M/M/1的生成转化为生成一个这样的节点:1、其发送数据的时间间隔服从指数分布,在程序中设其参数为;2、其发送的数据大小也服从指数分布,在程序中设其参数为。D/D/1:即数据进入队列和离开队列的概率是固定的,由M/M/1的节点生成可知,D/D/1的生成转化为这样一个节点:1、其发送数据的时间间隔固定;2、其发送的数据大小也固定,为方便比较其间隔时间和大小也用和来表示。M/D/1:综合M/M/

4、1和D/D/1,M/D/1的生成可转化为这样一个节点:1、其发送数据的时间间隔服从指数分布;2、其发送的数据大小固定。五、吞吐量的计算网络的吞吐量(Throughput,TH)是网络性能的一个重要参数,是指在不丢包的情况下单位时间内可以接收的数据量,单位是字节每秒或者比特每秒。端到端的吞吐量与网络状况有很大关系,为了测试端到端的最大吞吐量,应该逐渐增大发送端的数据发送速率,然后计算接收端的吞吐量,直至吞吐量达到最大。在分析Trace文件时,可以使用以下的计算方式计算吞吐量。上式中,TB(i)是指第i个分组被目的节点接收时已经传输的数据总量,TR(i)是第i个包的接收时间。im,标识计算从第m个

5、分组到第i个分组的吞吐量,特别的,若取m=1则是计算平均吞吐量。六、实验步骤1,根据实验的总体目标,确认本次实验的整体思路,书写仿真程序代码,具体程序代码内容请参考附录。2,根据上文所述的测量吞吐量的方法,在仿真完成之后,书写awk程序对仿真结果的Trace文件进行分析,具体程序代码内容请参考附录。3,将第2步中对Trace文件分析的结果送入Gnuplot作图,得到具体直观的结果,并对结果进行验证;当所得结论与理论不符时,修改仿真程序或者awk程序,重复上述第1、2步骤。七、运行结果与结论参照上述的步骤,获得以下结果:图1描述的是D/D/1、M/M/1、M/D/1三种排队系统的吞吐量对比图,其

6、中均设为30.0,均为33.0,横轴为时间(单位为s),纵轴为平均吞吐量(Mbit/s)。图1-小负载情况下三种排队系统的吞吐量对比图由图1可见这三者在输入负载不大的情况下平均吞吐量相差亦不大,其中D/D/1的吞吐量比较稳定,而M/M/1和M/D/1的吞吐量有波动性。 图2-D/D/1队列系统在不同情况下的吞吐量对比图2 为三个D/D/1队列的吞吐量对比,三个D/D/1队列的参数分别为如图所示,横轴为时间(单位为s),纵轴为平均吞吐量(Mbit/s)。不变时,随着的增大,数据包大小减小,从而输入负载也就减小,由图可知随着的增大平均吞吐量是减小的。图3-M/M/1队列系统在不同情况下的吞吐量对比

7、图3为三个M/M/1队列系统的吞吐量对比,三个M/M/1队列的参数分别为如图所示,横轴为时间(单位为s),纵轴为平均吞吐量(Mbit/s)。不变时,随着的增大,数据包发送时间间隔减小,从而输入负载也就增大,由图可知随着的增大平均吞吐量是增大的。图4-M/M/1队列系统在不同情况下的吞吐量对比图4为三个M/D/1队列系统的吞吐量的对比,三个M/M/1队列的参数分别为如图所示,横轴为时间(单位为s),纵轴为平均吞吐量(Mbit/s)。不变时,随着的增大,数据包发送时间间隔减小,从而输入负载也就增大,由图可知随着的增大平均吞吐量是增大的。附录:业务源生成程序:D/D/1、M/M/1、M/D/1队列程

8、序的共同部分:set ns new Simulatorset f open queue2.tr w set mu1 33.0set lambda1 30.0 set n1 $ns nodeset n2 $ns nodeset link $ns simplex-link $n1 $n2 1Mb 1ms DropTail$ns queue-limit $n1 $n2 50set src1 new Agent/UDP$ns attach-agent $n1 $src1set sink1 new Agent/LossMonitor$ns attach-agent $n2 $sink1 $ns conn

9、ect $src1 $sink1 set holdtime1 0set holdseq1 0set holdrate1 0D/D/1、M/M/1、M/D/1队列程序的不同部分:针对D/D/1队列:数据包发送proc sendpacket1 global ns src1 mu1 lambda1 set time $ns now $ns at expr $time + expr 1/$lambda1 sendpacket1 set bytes expr round (expr 100000.0/(8*$mu1) ) $src1 send $bytes针对M/M/1队列:两个指数分布的生成:set

10、InterArrivalTime1 new RandomVariable/Exponential$InterArrivalTime1 set avg_ expr 1/$lambda1set pktSize1 new RandomVariable/Exponential$pktSize1 set avg_ expr 100000.0/(8*$mu1)数据包的发送,将两个指数分布同数据发送间隔时间与数据大小绑定:proc sendpacket1 global ns src1 InterArrivalTime1 pktSize1 set time $ns now $ns at expr $time

11、+ $InterArrivalTime1 value sendpacket1 set bytes expr round ($pktSize1 value) $src1 send $bytes针对M/D/1队列:数据包发送,将一个指数分布(生成见M/M/1)同数据发送间隔时间绑定:proc sendpacket1 global ns src1 InterArrivalTime1 mu1 set time $ns now $ns at expr $time + $InterArrivalTime1 value sendpacket1 set bytes expr round (expr 10000

12、0.0/(8*$mu1) $src1 send $bytesD/D/1、M/M/1、M/D/1队列程序的其余共同部分:#记录及计算:proc record global sink1 f holdrate1 set ns Simulator instance set time 0.9 set bw0 $sink1 set bytes_ set now $ns now if $now = 0 puts $f $now 0.0 else Puts $f $now expr ($bw0+$holdrate1)*8)/($now*1000000) $sink1 set bytes_ 0 set holdrate1 expr $bw0 + $holdrate1 $ns at expr $now+$time record #启动:$ns at 0.01 record$ns at 0.01 sendpacket1$ns at 100.0 stop$ns at 100.01 puts NS EXITING. ; $ns halt#结束:proc stop global ns f close $f exit 0#运行:puts Starting Simulation.$ns run

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1