山东大学计网实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机网络实验报告
1.实验背景介绍
本次计算机网络实验主要是关于服务器处理包的过程模拟,其中一个重要的基础排队模型是M/M/1 排队模型。M/M/1排队模型(M/M/1 model)是一种单一服务器(single-server)的排队模型。M/M/1的主要特点:
1.到达人数是泊松过程(Poisson process)
2.服务时间是指数分布(exponentially distributed)
3.只有一台服务器(server)
4.队列长度无限制
5.可加入队列的人数为无限
M/M/1排队模型在任何状态下,只有两种事情可能发生:
1.有人加入队列。如果模型在状态k,它会以速率λ进入状态k + 1
2.有人离开队列。如果模型在状态k(k不等于0),它会以速率μ进入状态k – 1
由此可见,模型的隐定条件为λ< μ。如果死亡率小于出生率,则队列中的平均人数为无限大,故此这种系统没有平衡点。
在M/M/1 排队模型的基础上,我们进行了单服务器两队列模型和802.11 无线竞争模型的相关实验。
2.实验要求
1.单服务器两队列模型实验
带中央控制器的两个信道的实验,两个信道都是珀松过程,其中一个信道到达速率
为50,另一个到达速率为40。画出实验结果的队列长度分布图以及等待时间分布
图。
2.802.11 无线竞争模型
对没有中央控制器的竞争信道的包传输过程的模拟。画出队列长度分布以及等待时
间分布。
3.实验内容
实验一单服务器两队列模型
一、实验模型
本实验使用的模型是以M/M/1队列模型为基础的。包分别以不同的速率λ1和λ2进入两个队列,然后服务器以速率μ来处理包的数据。该模型具体实现如下:先随机包进入的两个队列的时间,以包进入队列1的时间t1和包进入队列2的时
间t2和包离开的时间t3这三个时间来推动时间前进的。本实验模型实行带赤字的
轮询算法来分配服务器服务每个队列的时间,具体的实现如下:先分给两个队列固
定的处理量,分别为service1和service2,同时设置两个队列的剩余处理量为
left_service1和left_service2。当轮到一个服务队列时,每次检查该队列所该服务的
包的大小是否超过所剩余的处理量left_service,如果超过的话,就left_service =
left_service + service,然后暂时不服务该队列,再检查下一队列,以此循环。当两
个队列都为空时,就清空每个队列的left_service,重新设置left_service = service。
二、参数说明
第一个队列进入的速率:40
第二个队列进入的速率:50
服务器服务的速率:100
在第一个队列的服务量:0.2s
在第二个队列的服务量:0.3s
三、实验结果及分析
a)队列长度分布
图一
图一显示的是队列长度大于等于该包数的概率分布,由图可以看出队列二的队列长
度最长在50多个左右,而队列一就明显和队列二差距很大。
试着调整两个队列的服务量时,变化量较大,当适当地增加服务量时,两个队列的
差距就会变小。
b)等待时间分布
图二
图二显示的是包等待时间大于等于该时间的概率分布,由图示可以发现队列一所需要等的总体时间较长,而队列二的总体时间等待的较短,且下降的较快。
试着调整服务量时,第一个队列的等待时间会变小,而队列二的等待时间会变大。
四、实验感悟
l. 一开始当两个队列为空时,并没有清除两个队列的服务量,最后结果两个队列趋势及差距都挺大的,经过查找资料后,又改了策略,当两个队列都为空时,就将两个队列的服务量重置。
2. 由于这两个队列的平均到达速率不一样,所以本模型给这两个队列分的服务器的服务权重不一样,到达快的分的权重较大,到达慢的分的权重较小。
3. 在做等待时间这个概率时,由于到达速率和处理速率都很快,等待的时间几乎都在1s之内,所以就把时间乘以100计算的。
实验二802.11无线竞争模型
一、实验模型
802.11解决包的碰撞的方法是二元指数回退算法,下面先介绍二元指数回退算法:
指在遇到重复的冲突时,站点将重复传输,但在每一次冲突之后,随着时延的平均值将加倍。二进制指数退避算法提供了一个处理重负荷的方法。尝试传输的重复失败导致更长的退避时间,这将有助于负荷的平滑。如果没有这样的退避,以下状况可能发生:两个或多站点同时尝试传输,这将导致冲突,之后这些站点又立即尝试重传,导致一个新冲突。
所以本实验模拟的802.11模型是有5个站来竞争信道的,包的总个数是10000000(10的7次方)。给系统定义一个time slot(固定大小),当一个站有包时,执行p坚持,即一开始先在N-1(N一开始是16)个time_slot中随机选择一个time slot然后在该time slot 到来的时候发包,当该站发包时,如果此时另一个站也恰好发包,此时会发生碰撞,此时相互发生碰撞的多个包会退回到站,然后N = N*2,再在N-1个time slot中随机选择一个time slot然后在该time slot到来的时候再继续发包,如果N > 1024,就把该包丢弃。
如果该包成功的传出并占用了信道,就会根据包的大小算出传输该包所需要占用多少的time slot,所以其他的站会在这些time slot时不发包,以此来模拟如何监测信道忙。
二、参数说明
服务器平均平均服务速率:100
每个站到达包的平均速率:15
time slot :0.08s
三、实验结果及分析
a)队列长度分布
图三