易信:从事计算机网络工作11年(新加坡7年,沙特4年),2013年获得CCIE。在新加坡,他曾就职于ATT、新加坡交通部、苹果、Equinix、苏格兰皇家银行等大型企业、银行和政府部门。目前在世界排名第一的沙特阿拉伯阿卜杜拉国王科技大学(KAUST)工作,担任高级网络工程师,是KAUST大学历史上第一位也是唯一一位中国IT系高级员工。2019年6月,专为零编程基础的网络工程师设计的第一本Python教程《网络工程师的Python之路》在知乎发布。
最近一个月《网络工程师的Python之路》系列文章写多了一点,有读者问我能不能像以前一样写一些关于网络业务专业知识点的文章。今天翻看我的Onenote,看到一个n年前自己准备CCDE做的关于“网络延迟”话题的笔记,纯属理论笔记,不涉及任何设备的任何配置和优化方案。感觉还行,就拿出来和大家分享吧。
网络延迟的定义
数据(消息)在传输介质中传输所需的时间,即消息离开网络时从发送方进入网络到接收方所需的时间。导致网络延迟的主要因素有六个:
1.串行化延迟(也称为传输延迟)
2.传播延迟
3.包交换技术
4.排队
5.数据包丢弃
6.处理
如何减少(优化)网络延迟?
1.串行化延迟(SD)是指数据进入传输介质(网线)所需的时间。数据的大小和传输介质可以提供的带宽决定了标清的长度。下图显示了与数据大小和传输介质可以提供的带宽相对应的标清值(注意:ms=毫秒,s=微秒,ns=纳秒)。结论:数据包越小,传输介质带宽越高,串行化延迟越小。
2.2。传播时延(PD)与传输介质类型/传输距离有关(尤其是物理距离,例如中国到美国西海岸的时延必须大于100毫秒,从美国东海岸的时延必须大于150毫秒)。在速度方面,在常用的传输介质中,无源Twinax CX-1 (SFP)电缆比光纤快,光纤比RJ-45网线快。
3.分组交换受到交换模式的影响。毫无疑问,在处理64字节和512字节的小数据包时,直通模式(分为快进模式和无碎片模式)比存储转发模式更快,但存储转发模式比直通模式更快。
4.排队,两个因素:
A.网络设备的缓冲区是否足够。
B.当网络使用饱和,链路拥塞时,网络设备采用什么样的排队方式?对于路由器,先进先出?WFQ?CBWFQ?LLQ?WRR有多少人排队换车?不同类型的CoS是否被分类到不同的WRR队列中?除了优先级队列,每个队列的权重设置是否合理?WRED门槛的设置合理吗?以上是关于QOS排队和拥塞避免的一个大话题,这里就不详细讨论了,但需要知道的是,一个好的排队机制可以在网络拥塞时减少(优化)网络延迟。
5.丢包,两个因素:a .硬件故障,网卡(网卡)和传输介质(线路质量、ISP设备)故障导致的丢包。b .人为错误、端口速度和双工模式配置不当导致丢包,进一步加剧网络延迟。
6.处理上,有很多优化方法,如下:1)关闭网络中不必要的功能,如CDP、IP重定向、Finger、Proxy ARP、IP BOOTP Server等。以减少不必要的链路开销。* *注意:思科Nexus 3548交换机不受此影响,也就是说,无论在N3548中打开多少功能,都不会造成网络延迟。这里不讨论具体的原理。有兴趣可以看看N3548的设计原理。2)网络设计:大规模网络是否严格采用传统的分层结构(介入、汇聚、核心三层)?在传统的星型网络中,边缘站是否设置为OSPF/EIGRP:存根区域,以减少路由表中的条目,从而优化网络设备处理数据的能力?3)适配器):大多数情况下,独立网卡优于集成网卡,原因很复杂,不再讨论。4)网络安全:从网络延迟的角度来看,使用路由器自身的安全功能(ACL、PVLAN和其他安全功能)比使用防火墙等专门的安全设备造成的网络延迟更少。