什么是延迟、TTFB、带宽和吞吐量?
保持网络的健康性能至关重要,因为每天都会发生数十亿次的数据传输。
根据 World Economic Forum,2020年开始时已有大约44泽塔字节的数据,这大约是可观测宇宙中的恒星总数的40倍。
这个数字将在未来的日子里继续增加。
这是一个令人难以置信的数字,但却是真实的!
因此,迫切需要确保您的网络具备足够的性能来满足不断增长的需求。
现在,房间里的大象是网络性能,它取决于某些因素,例如延迟、首字节时间(TTFB)、带宽和吞吐量。
如果您想保持稳定且高性能的网络,您应该优化这些因素。除此之外,它们还可以帮助您避免主要浏览器和搜索引擎的惩罚。
因此,请准备好理解这些网络术语以及如何通过优化它们来实现高性能。
什么是延迟?
延迟字面上意味着延迟。
在网络生态系统中,延迟是请求或数据从源头到目的地所需的时间。在这里,用户的操作是请求,网络应用程序响应此请求所需的时间。
这个时间延迟还包括服务器处理请求所需的时间。因此,它被测量为往返时间-请求被多个设备捕获和处理后以及接收用户并对其进行解码的总时间。
如果数据传输的延迟相对较小,那就是低延迟,这是可取的。但是延迟较长或高延迟是不可取的,因为它会降低性能。
但是,您如何知道您的网络是否具有高延迟?
一些典型的迹象包括:
- 网站或应用程序加载需要“很久”
- 访问服务器和网络应用程序变慢。
- 发送一些信息(例如带有大附件的电子邮件)需要更长的时间。
因此,当您遇到此类迹象时,可能是由于高延迟的网络。
Network latency以毫秒(ms)计算,并且由于多个因素影响网络之间的交流方式,它是不可避免的。但是,您可以通过实施某些措施来减少延迟,我将在接下来的章节中讨论这些措施。
在此之前,让我们讨论一下网络延迟的原因。
延迟的原因是什么?
- 发出请求的用户和目标的距离
- 服务器错误,例如错误50X,可能会影响应用程序的性能,还可能阻止访问者访问您的网站。
- 后端数据库优化不佳,可能是由于过度利用的数据库、字段过长、表过大、索引使用不当和复杂计算等原因。
- 由于路由器、Wi-Fi接入点、交换机、安全设备、负载均衡器、防火墙、IPS等硬件问题。
- 传输介质(例如无线连接、光纤电缆等)存在限制。
- 由于内存空间不足,操作系统难以满足程序使用的RAM需求,从而影响系统性能。
- 终端用户问题,例如需要在合理的时间范围内捕获响应所需的低CPU或内存周期
如何测量⏱️延迟?
如果您使用SolarWinds和Datadog等品牌的网络监控工具,可以自动检查网络延迟。
但是是否有手动方法?
答案是肯定的。
只需在操作系统中打开命令提示符,然后键入以下内容- tracert
,然后键入要查询的目标。
在输入命令后,会显示一个包含通往站点地址的网络路径上的所有路由器的列表。它还会显示以毫秒为单位的时间计算。
只需将所有测量结果相加,即可得到与您的网络相关的延迟。
有几种测量延迟的方法:
首字节时间(TTFB)
当请求从用户设备离开并到达目标位置时,记录的时间差与数据的“第一个”字节被称为首字节时间(TTFB)。
TTFB也是网络延迟和服务器响应能力的重要指标。
往返时间(RTT)
数据包从源到目的地再返回源的总时间被称为往返时间(RTT)。它可以提供准确的结果,但如果数据包采用不同的返回路径,情况可能会变得模糊。
Ping测试
通常,系统管理员使用ping测试来测量32字节到达服务器所需的时间以及接收响应的时间。这些方法可以同时检查网络中的不同服务器,并报告整体延迟和性能。
您还可以进行online ping测试。
如何改善网络延迟?
优化路由
使用能够有效处理网络拥塞的优化工具来改善路由。
如果问题出现在传输介质中,您还可以使用放大器或再生器来提高网络速度。
压缩和缓存
高度分布的IP需要经过长距离的传输时间。如果您管理一个靠近最终用户的边缘服务器,它将减少旅行时间并提高页面加载速度。
除此之外,像图像优化和文件压缩这样的技术也可以减少传输大数据量所需的带宽。
对等连接
对等连接意味着允许两个或多个网络相互连接并直接交换流量,而无需向第三方支付流量在网络中的传输费用。
因此,维护一个正常连接的网络,其中在互联网上有多条网络路径可用。
优化网络协议
通过优化网络协议以实现互操作性和最低延迟来符合监管标准。
使用HTTP/2
HTTP/2通过减少往返次数和并行传输来减少服务器延迟。此外,您还必须确保最小数量的外部HTTP请求,包括图像以及JS和CSS文件。
预取方法
虽然它可能不会直接减少网络延迟,但可以改善您的网站在page loading speed方面的性能。
首字节时间(TTFB)
正如我之前所讨论的,TTFB是确定服务器响应能力的一个指标,现在让我们转到它的其他方面。
TTFB可以帮助您确定连接过程中存在的所有弱点。如果您能确定延迟发生的位置,您可以调整您的服务以获得更快和可靠的性能。
更不用说,TTFB还会影响SEO;因此,对于您的在线可见性来说,它也至关重要。
哪些因素会影响TTFB?
三个动作会影响TTFB:
向服务器发送请求
一旦用户发出请求,服务器会根据DNS查询所需的时间、网络速度、服务器距离等因素接收请求,并开始计算TTFB。
处理请求
在接收请求后,服务器必须处理请求并生成响应。该过程包括数据库调用、与网络内其他系统的通信、运行脚本等。
回复
接下来,服务器将生成的响应返回给发出请求的用户。现在,这取决于用户和企业网络的连接速度。
在这里,TTFB是用户从第一个字节开始接收响应的时间。
如何提高TTFB?
减少延迟
延迟可能发生在任何一方:您的服务器和/或用户。虽然您无法控制用户的连接速度,但您肯定可以提高您的服务器速度。尝试通过使用CDNs来减少服务器负载,这样可以将静态内容放近用户,提高页面加载速度。
快速DNS解析
DNS解析不应超过100毫秒。当发生这种情况时,请考虑优化DNS设置。如果问题仍然存在,您还可以更改DNS提供商。
升级您的网站托管
TTFB超过200ms对您的网站来说不好。慢TTFB的原因可能是由于网络拥塞和服务器超负荷导致的website hosting提供商。
如果是这种情况,您可以与托管提供商讨论此事或升级您的计划。否则,您也可以将您的网站迁移到另一个提供商。如果您正在使用WordPress,请查看这些premium hosting platforms。
改进后端性能
如果您没有正确规范化或索引数据库,它可能会拖慢响应时间。因此,请规范化和索引数据库以进行及时查询。它还将通知您的数据库快速查找表列,而不是检查每个表列。
服务器端缓存
通过在服务器缓存中维护经常需要的文件和数据读取来减少处理器负载和数据库查询。
外部监视
如果您通过实施一些策略来优化TTFB,那很好!
并且您始终希望保持这种状态。
但是软件更新、硬件、站点更新和其他因素可能导致TTFB增加。因此,在为时已晚之前请注意这些变化。
您可以实施站点performance monitoring tools。如果性能下降,它将帮助您快速修复问题。
什么是带宽?
带宽是指网络的最大容量,包括网络大小和服务器处理能力。
简单来说,它是在给定时间点可以发送和/或接收的数据量的度量。它以每秒的位数、兆位数或千兆位数表示。
影响带宽的因素
互联网连接包括特定的最大带宽。某些因素可能限制特定设备的带宽,从而导致连接速度变慢。以下列出的这些因素可能源自连接的性质或用户的计算机。
互联网使用
带宽受到您在设备上执行的任务总数的影响。同时执行更多任务会使速度变慢。因此,请考虑串行化您的任务。
上行和下行带宽
从设备流出的数据是上行,而流向设备的数据是下行。
通常,互联网进程包括比上行更多的下行使用,因此互联网连接更注重下行带宽。
因此,当需要上行传输大量数据、视频聊天、远程访问、语音通话等时,带宽会受到影响。
后台消耗
同时下载和上传的并发数量会影响带宽。
单个连接,多个用户
在单个网络中用户数量增加会增加服务器负载,导致数据传输变慢。
路由器距离
如果您的设备离路由器更近,与放置得更远的情况相比,您将获得更高的带宽。
如何提高带宽?
使用QoS设置
服务质量(QoS)设置可以帮助网络支持重要应用程序,并命令流量规则以优先处理某些流量类型。因此,需要的应用程序不必争夺带宽。
云应用可能会有所帮助。
转向云端以提高网络性能。尝试将您的部分流量外包给私有和公共云网络,从而减轻网络压力。
消除非必要的流量
您可以阻止在工作时间内对您的生产力没有价值的非必要流量。这样,您的带宽就可以仅用于运行必要的操作。
定期更新和备份
数据和软件的更新和备份对于性能和安全至关重要。但是,这些过程会占用大量的网络带宽。
这就是为什么您应该有策略地安排它们,最好是在正常工作时间之外。
什么是吞吐量?
网络吞吐量是指在指定的时间框架内从源头传输到目的地的总数据量的度量。
换句话说,吞吐量衡量成功到达目的地的数据包数量。它以每秒位数或每秒数据量的形式计算。
影响吞吐量的因素
传输介质的限制
传输介质的带宽或理论容量限制了吞吐量。
例如,如果带宽速率为100 Mbps,它不会超过这个速率。实际发送的数据约为95%左右。
网络拥塞 🚸
在高度拥塞的网络中,吞吐量会降低。
延迟
如果特定网络上的延迟较大,吞吐量将受到影响。
协议操作
在网络上承载和传递数据包的协议也会影响吞吐量。
数据包丢失或错误
在某些类型的流量中,数据包错误和丢失会影响吞吐量。这是因为这些数据包需要重新传输,进一步降低了吞吐量。
导致数据包受损的原因可能是安全攻击、设备损坏等。
如果您想要测量吞吐量,可以使用一些工具,如SolarWinds,iPerf等。
如何提高吞吐量?
最小化延迟
您应该首先尝试最小化网络延迟,因为它极大地影响网络性能并导致用户体验不佳。
您可以参考上述部分来解决此问题。
消除网络瓶颈
通过升级路由器、减少节点总数来避免网络瓶颈,缩短数据包的传输距离。从而减少拥塞,提高吞吐量。
注意使用过多带宽的应用程序。
如果您的互联网连接使用量远远超过公平份额,吞吐量将会降低。因此,关闭那些使用过多带宽的应用程序,除非它们是必需的。
重启网络
定期计划重启网络系统,如调制解调器、路由器等。因此,当它们重新开始工作时,它们可以展现出极佳的性能。
检查您的硬件
不要让有故障的硬件影响吞吐量。因此,请检查您的网络硬件,以查找是否存在任何差异。
与您的ISP交流
如果您已经做好了一切准备,但仍然遇到吞吐量低的问题,请考虑向您的互联网服务提供商(ISP)反馈相同的情况。也许问题出在他们那边。
结论
我希望您对延迟、TTFB、带宽和吞吐量有了一些清楚的了解。尝试实施我上面提到的提示和技巧来增强您网络的性能。
接下来,成为一个Network administrator。