文章目录

  • The arrival Process
  • Queueing System
    • The M/M/1 queue
    • The M/M/1/N queue
  • References

排队理论已被用于评估通信网络的性能很多年了。早在1917年,丹麦数学家 Erlang 就将该理论用于电话交换机的设计,并开创了现在著名的 Erlang-B 和 Erlang-C 公式,从那时起,这些公式就被用于许多应用中。自从引入分组交换后,排队论在通信网络的设计和分析中的重要性更加不言而喻。

The arrival Process

任何分组交换通信网络模型的第一个要求是对进入系统的数据包进行建模。最常见的方法是使用泊松过程。泊松过程对进入到网络的数据包的时间分布有很好的建模。

我们考虑一个时间间隔 Δt\Delta tΔt,Δt→0\Delta t \to 0Δt→0。那么可以用以下三点来定义一个泊松到达过程:

  • 在 Δt\Delta tΔt 中有包到达的可能性: P(onearrival)≜λΔt+O(Δt)P({\rm one\ arrival}) \triangleq \lambda \Delta t+O(\Delta t)P(one arrival)≜λΔt+O(Δt)

    • 其中,λΔt≪1\lambda \Delta t \ll 1λΔt≪1,λ\lambdaλ 是一个比例常数,O(Δt)O(\Delta t)O(Δt) 表示 Δt\Delta tΔt 中可忽略的高阶项。例如,如果 Δt=10−6\Delta t=10^{-6}Δt=10−6 s,那么 (Δt)2=10−12(\Delta t)^2=10^{-12}(Δt)2=10−12 s 就是一个高阶项,和 Δt\Delta tΔt 比起来完全可以忽略。
  • 在 Δt\Delta tΔt 中无包到达的可能性:P(noarrival)=1−λΔt+O(Δt)P({\rm no\ arrival}) = 1- \lambda \Delta t+O(\Delta t)P(no arrival)=1−λΔt+O(Δt)
  • 包的到达是无记忆性的(memoryless)。也就是说,在每个 Δt\Delta tΔt 包的到达与否都是互相独立的。

如果我们不考虑高阶项,那么公式就简化为

P(onearrival)=λΔtP(noarrival)=1−λΔtP({\rm one\ arrival}) = \lambda \Delta t \\ P({\rm no\ arrival}) = 1- \lambda \Delta t P(one arrival)=λΔtP(no arrival)=1−λΔt

现在我们有一个大的时间区间 TTT,将它再分成 nnn 个小区间,每个小区间为 Δt=T/n\Delta t =T/nΔt=T/n。然后我们可以用伯努利分布算出 TTT 时间内有 kkk 个包到达的概率:
P(karrivalsinT)=P(k)=(nk)(λΔt)k(1−λΔt)n−kP({\rm k\ arrivals\ in\ T})=P(k)=\binom{n}{k}( \lambda \Delta t)^k(1- \lambda \Delta t)^{n-k} P(k arrivals in T)=P(k)=(kn​)(λΔt)k(1−λΔt)n−k

我们将 (nk)\binom{n}{k}(kn​) 展写开成 n!(n−k)!k!\frac{n!}{(n-k)!k!}(n−k)!k!n!​,且将 Δt=T/n\Delta t =T/nΔt=T/n 代入得到

P(k)=(λT)kk!(1−λTn)nn(n−1)...(n−k+1)nk(1−λTn)−kP(k) = \frac{(\lambda T)^k}{k!}\left(1-\frac{\lambda T}{n}\right)^n \frac{n(n-1)...(n-k+1)}{n^k}\left(1-\frac{\lambda T}{n}\right)^{-k} P(k)=k!(λT)k​(1−nλT​)nnkn(n−1)...(n−k+1)​(1−nλT​)−k

令 n→∞n\to \inftyn→∞,那么

(1−λTn)n→e−λT\left(1-\frac{\lambda T}{n}\right)^n \to e^{-\lambda T} (1−nλT​)n→e−λT

n(n−1)...(n−k+1)nk→1\frac{n(n-1)...(n-k+1)}{n^k} \to 1 nkn(n−1)...(n−k+1)​→1

(1−λTn)−k→1\left(1-\frac{\lambda T}{n}\right)^{-k} \to 1 (1−nλT​)−k→1

因此公式简化为

P(k)=(λT)kk!e−λT,k=0,1,2,…,∞P(k)=\frac{(\lambda T)^k}{k!}e^{-\lambda T},\quad k=0, 1, 2,\dots, \infty P(k)=k!(λT)k​e−λT,k=0,1,2,…,∞

这不就是泊松分布嘛!

泊松分布的均值大家应该也知道,所以 TTT 时间内包平均到达的数量即为 λT\lambda TλT。


Queueing System

一个排队系统通常可以用肯德尔记号(Kendall’s notation)来描述。肯德尔记号的形式形如 a/b/c/d/e 共五个字段,它们分别代表
a: arrival process
b: service process
c: number of servers
d: system capacity (queue capacity + number of servers)
e: maximum number of potential customers
a 的常用描述符有:
  • M:代表 memoryless,每个到达的间隔时间是指数分布的,例如我们上面讨论的泊松过程
  • D:代表 deterministic,每个到达的间隔时间是常数
  • G:代表 general,包含所有的 arrival process
  • Geo:代表 geometric,离散形式的指数间隔时间分布

第二个字段,b,可以用第一个字段中使用的任何描述符来代替,只是这些描述符现在描述的是 service process 而不是 arrival process。

第三个字段,显而易见,用正整数来表示。第四个和第五个字段也是使用正整数。如果这些字段中的某个忽略不写,那么会默认为无穷。

例如 M/M/1 表示:泊松过程、指数服务时间、单个服务器、无穷系统容量、潜在的无穷客户数量。

Geo/D/1//N 表示:geometric 分布的到达时间、确定的服务时间(固定大小的包)、单个服务器、无穷系统容量、最大的潜在客户数量 N。


The M/M/1 queue

对于 M/M/1 队列,我们假设到达速率为 λ\lambdaλ,服务速率为 μ\muμ,队列的状态为队列中等候服务的“客户”(包)数量。我们可以画出描述这个队列的状态转移图:

当处于状态 0 时,队列是空的,一个到达可能以 λΔt\lambda \Delta tλΔt 的概率发生。

在状态 1 中,队列中有一个客户,这个客户可以以 μΔt\mu \Delta tμΔt 的概率得到服务,在这种情况下,队列返回状态 0。或者这时有一个客户到达,队列会进入状态 2。

根据上面的分析,状态 k 和状态 k+1 之间的关系为

λP(k)=μP(k+1),k≥0\lambda P(k) = \mu P(k+1),\quad k \ge 0 λP(k)=μP(k+1),k≥0

我们将 λ/μ\lambda/\muλ/μ 写为 ρ\rhoρ,所以有

P(k+1)=ρP(k),k≥0P(k+1) = \rho P(k),\quad k \ge 0 P(k+1)=ρP(k),k≥0

我们从 k=0k=0k=0 开始代入,会发现如下规律:

P(k)=ρkP(0),k≥0P(k) = \rho^kP(0),\quad k \ge 0 P(k)=ρkP(0),k≥0

将此式代入 ∑k=0∞P(k)=1\sum_{k=0}^\infty P(k)=1∑k=0∞​P(k)=1 中,有

P(0)∑k=0∞ρk=1P(0)\sum_{k=0}^\infty \rho^k=1 P(0)k=0∑∞​ρk=1

式中的无穷等比数列由公式很容易算出,因此我们可以计算出 P(0)=1−ρP(0)=1-\rhoP(0)=1−ρ.

所以最终得出

P(k)=ρk(1−ρ),k≥0P(k) = \rho^k(1-\rho),\quad k \ge 0 P(k)=ρk(1−ρ),k≥0

平均吞吐量(Mean Throughput):平均吞吐量被定义为单位时间内通过系统的平均客户数量。

因为我们的服务速率为 μ\muμ,所以平均吞吐量为
S=μ∑k=1∞P(k)=λS = \mu \sum_{k=1}^\infty P(k) = \lambda S=μk=1∑∞​P(k)=λ

平均系统延迟(mean system delay):平均系统延迟被定义为一个客户从进入系统到服务完毕离开系统的时间。我们通常通过 Little’s result 间接计算平均系统延迟。

Little’s result 表明,系统的平均客户数量等于平均吞吐量和平均系统延迟的乘积:
L=λWL=\lambda W L=λW

而平均客户数量的计算如下:
L=∑k=0∞kP(k)=ρ(1−ρ)∑k=1∞kρk−1L = \sum_{k=0}^\infty kP(k)=\rho(1-\rho)\sum_{k=1}^\infty k\rho^{k-1} L=k=0∑∞​kP(k)=ρ(1−ρ)k=1∑∞​kρk−1

假设 ρ<1\rho < 1ρ<1,也就是说服务速率大于到达速率,那么以上公式可以简化为
L=ρ1−ρL = \frac{\rho}{1-\rho} L=1−ρρ​

所以平均系统延迟可以相应被表示为
W=Lλ=1μ−λW=\frac{L}{\lambda}=\frac{1}{\mu-\lambda} W=λL​=μ−λ1​


补充:
∑n=0∞xn=11−x\sum_{n=0}^\infty x^n=\frac{1}{1-x} n=0∑∞​xn=1−x1​

∑n=1∞nxn=x(1−x)2\sum_{n=1}^\infty nx^n=\frac{x}{(1-x)^2} n=1∑∞​nxn=(1−x)2x​


The M/M/1/N queue

M/M/1/N 队列与 M/M/1 队列相同,只是它的客户容量为有限值 N,因此状态转移图必须被修改为只有 0 到 N 共 N+1 个状态。

M/M/1/N queue 的公式推导与 M/M/1 基本一致,我们直接给出如下结果:
P(k)={ρk1−ρ1−ρN+1,ρ≠1ρkN+1,ρ=1P(k)=\left\{ \begin{aligned} \rho^k\frac{1-\rho}{1-\rho^{N+1}},\quad \rho \neq 1 \\ \frac{\rho^k}{N+1}, \quad \rho=1 \end{aligned} \right. P(k)=⎩⎪⎪⎨⎪⎪⎧​ρk1−ρN+11−ρ​,ρ​=1N+1ρk​,ρ=1​

因缓存满而丢包的概率:
PL=P(N)={ρN(1−ρ)1−ρN+1,ρ≠11N+1,ρ=1P_L=P(N)=\left\{ \begin{aligned} \frac{\rho^N(1-\rho)}{1-\rho^{N+1}},\quad \rho \neq 1 \\ \frac{1}{N+1}, \quad \rho=1 \end{aligned} \right. PL​=P(N)=⎩⎪⎪⎨⎪⎪⎧​1−ρN+1ρN(1−ρ)​,ρ​=1N+11​,ρ=1​

平均吞吐量:
S=λ(1−PL)S=\lambda(1-P_L) S=λ(1−PL​)

平均系统延迟:
W=LS=1S∑k=0NkP(k)W=\frac{L}{S}=\frac{1}{S}\sum_{k=0}^NkP(k) W=SL​=S1​k=0∑N​kP(k)


References

Digital Communications, by Ian Glover, Dr Peter Grant. Chapter 19.

无线传感器网络:排队论(Queueing Theory)模型相关推荐

  1. 《WSN》无线传感器网络全文翻译

    前言 该篇文章的全文翻译是由敖琳.綦正民.钱金柱.陈见埔.刘仁宇.胡雪亮六位同学完成.其中敖琳负责摘要.第1节.第2节的翻译,綦正民负责第3节的翻译,钱金柱负责第4节的翻译,刘仁宇负责第5节的翻译,陈 ...

  2. 无线传感网课后习题(书本名称无线传感器网络基础 : 理论和实践 : Fundamentals of wireless sensor networks : theory and practice)

    无线传感网课后习题(书本名称无线传感器网络基础 : 理论和实践 : Fundamentals of wireless sensor networks : theory and practice) 1 ...

  3. 无线传感网课后习题(书本名称无线传感器网络基础 : 理论和实践 : Fundamentals of wireless sensor networks : theory and practice)二

    7.4 Describe a WSN application for each of the following categories: time-driven, eventdriven, and q ...

  4. NUAA无线传感器网络 复习重点整理

    鸣谢 授课老师:郝洁老师 个人主页 在cdsn博主:Matts Tian 基础上修改.添加 Matts Tian 体系结构 什么是无线传感器网络? 无线传感器网络(Wireless sensor ne ...

  5. 无线传感器网络中的节点定位技术

    无线传感器网络中的节点定位技术 无线传感器网络中的节点定位技术 本文转载,原文链接://www.cnblogs.com/dolphin0520/archive/2013/05/03/3056789.h ...

  6. 无线传感器网络期末复习知识点总结资料

    文章目录 一.无线传感器网络概述? 1.什么是传感器网络 2.WSN特点 3.传感器的节点结构 4.无线传感器网络架构 5.无线传感器网络面临的挑战 二.物理层设计 1.工作状态 2.传输介质 3.编 ...

  7. 物联网与无线传感器网络期末考试复习资料(教材--刘伟荣,何云--电子工业出版社)

    无线传感器网络概述 无线传感器网络介绍 1.无线传感器网络是一种特殊的无线通信网络,它是由多个传感器节点通过无线自组织的方式构成的,应用在人么力所不能及的领域,如战场.环境等地方. 2.WSN和Ad ...

  8. 【WSN通信】基于最佳簇半径的无线传感器网络分簇路由算法附matlab代码

    1 内容介绍 无线传感器网络(WirelessSensorNetwork,WSN)是由若干个分布在被监控范围内的传感器节点构成的网络,这些节点以随机或者确定位置分布的形式布置在被监测范围内,可以收集温 ...

  9. 无线传感器网络定位算法

    无线传感器网络定位算法 在此,需要强调无线传感器网络节点的自组织性.为避免人为配置节点坐标产生的误差干扰,及考虑到多数网络部署区域是人类不可达区域的情况,通常情况下选择参考节点的随机部署方式.在这种情 ...

  10. 无线传感器网络(期末重点)

    文章目录 com1. 无线传感器网络定义 com2. 传感器节点基本组成部分 com3. 无线传感器网络协议栈结构 com4. 无线传感器网络的实际应用举例 com5. WSN物理层工作频段 com6 ...

最新文章

  1. C++ 内存泄漏检测:valgrind和AddressSanitizer
  2. Android——四大组件、六大布局、五大存储
  3. pandas 如何判断指定列是否(全部)为NaN(空值)
  4. Ring0和Ring3权限级
  5. static 与 extern 关键字描述说明
  6. 获取Class对象方式
  7. linux系统 远程桌面连接到服务器,Ubuntu 14.04服务器远程桌面连接
  8. 一款显示游戏计算机占用软件,玩游戏占用电脑内存多怎么办
  9. 新手入坑自动驾驶,从 JetBot 机器人小车开始,能学到什么?
  10. 五个问答告诉你:阿里云对象存储如何助力钉钉战胜业务洪峰
  11. 某些网站加载的zul文件和zk文件是什么东西
  12. 空手套白狼,放端套利
  13. 英语之形容词和副词规则
  14. 将Shapefile(SHP)转换为Surfer中的网格(GRD)的方法-通用方法。
  15. 2019.5.summary
  16. LDO使用之热阻考虑
  17. newman执行测试_用Postman/Newman搞定API测试
  18. SAP ABAP开发个别概念理论区分理解
  19. CCF ChinaSoft 2022中国软件大会火热报名中
  20. 计算机网络管理员岗位要求,网络管理员岗位职责

热门文章

  1. 如何在命令行运行java程序
  2. Matlab解方程的几种方法
  3. Notify与notifyall的区别
  4. 【QT】GraphicsView、QGraphicsScene、QGraphicsEllipseItem的使用
  5. 剑指offer java版 test3—从尾到头打印链表
  6. linux自动备份数据库并发送邮件
  7. Molar mass(计算分子量)字符转化
  8. win10 提示该文件没有与之关联的应用来执行该操作
  9. CreateProcess返回740错误码
  10. 一个不断调用函数的趣事