我一直在寻找这个问题,从我找到的少量信息来看,现代路由器试图尽可能公平地平衡互联网带宽。(我自己使用的是华硕 AC66U)
例如,如果我有 100 Mbit 的互联网连接,并且两个客户端想要使用最大带宽,路由器会尝试在这两个客户端之间分配 50/50 的带宽。如果三个客户端都想使用尽可能多的带宽,那么带宽将按 33/33/33 的比例分配。
但感觉这种公平分配并不总是如此,所以有人能帮助我理解以下内容吗:
路由器如何更详细地执行这种分配,以及哪些场景会导致这种理论上的带宽分配失败?
谢谢!
答案1
服务质量不是根据请求数据的客户端数量均匀分配服务,而是根据请求的服务来分配带宽。
例如,一个用户正在请求 Netflix,另一个用户只是浏览网页。如果流媒体视频在优先级列表中高于 HTML,那么第一个用户的数据将首先得到处理。
QoS 中经常考虑的其他因素包括延迟、带宽、抖动和可靠性。如果某项服务的响应时间较长(延迟/ping 值较高),则其排名可能会下降。
就标题问题而言,没有 QoS 的路由器不会决定带宽分配。它只是先到先得。
How To Geek 对这个概念进行了简单易懂的分解:
http://www.howtogeek.com/75660/the-beginners-guide-to-qos-on-your-router/
答案2
大多数人的互联网带宽都是下行带宽。您自己的路由器不会为下行流量做出数据包调度决策,而是由 ISP 的路由器来做这件事。
它们几乎肯定会有某种形式的 QoS 调度,即使它像 WRED 一样基本。没有任何调度,路由器将以 FIFO(先进先出)方式运行,并进行尾部丢弃。也就是说,如果它很忙,当输出缓冲区已满时,数据包可能会被丢弃。