排队时延(Queuing delay)
网络时延的构成
Network delay including four parts:
Processing delay - time routers take to process the packet header.
Queuing delay - time the packet spends in routing queues
Transmission delay - time it takes to push the packet's bits onto the link.
Propagation delay - time for a signal to reach its destination.
本文关注的是其中的排队时延(Queuing delay)。
为什么会有排队时延?
A:When packets arrive at a router, they have to be processed and transmitted.
A router can only process one packet at a time. If packets arrive faster than the router
can process them the router puts them into the queue until it can get around to
transmitting them.
As a queue begins to fill up due to traffic arriving faster than it can be processed,
the amount of delay a particular packet experiences traversing the queue increases.
数据报的到达速度 > 路由器的处理速度,就会将数据报暂存起来,等待处理。
排队时延的影响因素?
路由器利用率 = 每秒到达的数据报个数 / 路由器每秒能处理的数据报个数。
路由缓存大小:和最大排队时延成比例。
几个参数
路由器的传输速度(Transmission rate),10Mbps / 100Mbps / 1000Mbps / 10Gbps。
路由器的服务速度(Service rate):Transmission rate / average packet size,路由器每秒最多能处理的数据报个数。
数据报的到达速度(Arrival rate):每秒有多少个数据报到达路由器。
路由器利用率(Resource utilization):Arrival rate / Service rate,表示路由器的使用情况。
T:路由器的传输速度。
S:路由器的服务速度。
A:数据报的到达速度。
U:路由器的利用率。
P:数据报的平均大小。
D:排队时延。
时延曲线(delay curve)可以用以下函数来表示:
几个结论:
(1) T和A相同时,P越小,D越小。
同一条链路,发送10个小包,和发送10个大包相比,小包经历的排队时延小。
当然,这个时候10个小包所占用的带宽也少。
(2) 路由器的利用率
对于高优先级、低延迟的流来说,路由器的利用率不能太高。
对于低优先级、时延敏感度低的流来说,路由器的利用率不受限制。
从上图可以看到:
U <= 80%,D随着U的增长而缓慢增长。
U > 80%,D随着U的曾展而剧烈增长。
因此,要保证排队时延不剧烈增长,U要小于80%,即数据报的发送速度 < 0.8 * 路由器传输速度。
例如,对于一个1000Mbps的路由器来说,数据报的发送速度在800Mbps以下为佳。
当数据报的发送速度超过800Mbps时,排队时延就会猛涨,响应也巨慢。
(3) 最大排队时延
最大排队时延和路由缓存大小是成比例的。
如果使用了一个很大的路由缓存,则当排队时延很大的时候,也不会发生丢包,这显然是不合理的。
当路由缓存满了的时候,路由器就会把数据报丢掉,这就是拥塞丢包。
这个时候,路由器所经受的排队时延应该是最大的。
同时,路由的变化也会导致时延的变化。
Reference
[1] http://www.hill2dot0.com/wiki/index.php?title=Queuing_delay
[2] http://en.wikipedia.org/wiki/Queuing_delay#cite_note-4
排队时延(Queuing delay)的更多相关文章
- [A Top-Down Approach][第一章 计算机网络和因特网]
[A Top-Down Approach][第一章 计算机网络和因特网] 标签(空格分隔): 计算机网络 介绍基本术语和概念 查看构成网络的基本硬件和软件组件. 从网络的边缘开始,考察在网络中运行的端 ...
- 《数据通信与网络》笔记--QoS
QoS(Quality of Service)服务质量,是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术. 1.QoS参数 衡量服务质量QoS的参数主要包括: 端到端延迟(Delay) ...
- High Performance Browser Networking - TCP UDP TLS
延迟 定义和标准延迟 延迟简单地说,它是一种转移或信息包从起点到终点,所花费的时间. 延迟=发送延迟+传播延迟+处理延迟+排队延迟: Propagation delay 传播时延 传播时延这个概念.是 ...
- Computer Networking: A Top Down Approach
目录 Chapter 1: Computer Networks and the Internet 1. What is the Internet? 2. The Network Edge 3. The ...
- Computer Neworking: A Top-Down Approach
目录 Chapter 1: Computer Networks and the Internet 1. What is the Internet? 2. The Network Edge 3. The ...
- 深入理解RabbitMQ中的prefetch_count参数
前提 在某一次用户标签服务中大量用到异步流程,使用了RabbitMQ进行解耦.其中,为了提高消费者的处理效率针对了不同节点任务的消费者线程数和prefetch_count参数都做了调整和测试,得到一个 ...
- tcp协议头窗口,滑动窗口,流控制,拥塞控制关系
参考文章 TCP 的那些事儿(下) http://coolshell.cn/articles/11609.html tcp/ip详解--拥塞控制 & 慢启动 快恢复 拥塞避免 http://b ...
- WebRTC之带宽控制部分学习(1) ------基本demo的介绍
转自:http://blog.csdn.net/u013160228/article/details/46392037 WebRTC的代码真是非常之大啊,下载以及编译了我好几天才搞完..... 可以看 ...
- 【温故而知新】Tcp/Ip协议——总览
Tcp/Ip协议 一.概念 “三网”:即电信网络.有线电视网络和计算机网络 标准(Standards) 描述了协议的规定,设定了最简的性能集. 协议(Protocol) 网络设备用于交换信息的系列规则 ...
随机推荐
- EJB3+JBoss5+Myeclipse9创建HelloWorld实例
本实例用到的工具 1. jboss5 (配置不做介绍,谷歌度娘都有) 2. MyEclipse 9 实例创建 1.EJB类创建 打开MyEclipse 9 中右上角如下选项 再新建一个EJB项目 新 ...
- android viewpager切换到最后一页时,跳转至其他activity
许许多多的qpp,在启动时会显示一些帮助页或者产品介绍什么的,通常滑动到最后一页时会有一个开始体验的按钮,用来跳转到app的主activity上,但是如果没有? 可以通过如下方法实现: 1.为View ...
- React实现动画效果
流畅.有意义的动画对于移动应用用户体验来说是非常必要的.和React Native的其他部分一样,动画API也还在积极开发中,不过我们已经可以联合使用两个互补的系统:用于全局的布局动画LayoutAn ...
- Hibernate单表操作
单一主键 assigned:由Java应用程序负责生成(即手工的赋值) native:由底层的数据库自动的生成标示符,如果是MySQL就是auto_increment,如果是Oracle就是seque ...
- unity使用ugui自制调色面板
突然想实现一个调色面板,然后开工... 首先找找有没有什么接口可调,木有找到,找到一些调用win32实现的本地颜色面板的调用,感觉不科学,反正多平台肯定是搞不定的. 既然没找到,还是老老实实的自己写吧 ...
- Shell在大数据时代的魅力:从一道百度大数据面试题想到的点滴
对于在Linux下开发的同学来说,Shell可以说是一种基本功. 对于运维的同学来说,Shell可以说是一种必备的技能,而且应该要非常熟练的书写Shell.对于Release Team,软件配置管理的 ...
- listview下拉刷新上拉加载扩展(二)-仿美团外卖
经过前几篇的listview下拉刷新上拉加载讲解,相信你对其实现机制有了一个深刻的认识了吧,那么这篇文章我们来实现一个高级的listview下拉刷新上拉加载-仿新版美团外卖的袋鼠动画: 项目结构: 是 ...
- (copy)赋值构造函数的4种调用时机or方法
第一种调用方法: demo #include <iostream> using namespace std; class Text { public: Text() // 无参数构造函数 ...
- Java中httpClient中三种超时设置
本文章给大家介绍一下关于Java中httpClient中的三种超时设置小结 在Apache的HttpClient包中,有三个设置超时的地方: /* 从连接池中取连接的超时时间*/ ConnManage ...
- 如何在Cocos2D 1.0 中掩饰一个精灵(一)
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 原帖来自Ray Wunderlich写的精彩的文章 How To ...