从技术上讲,我可以享受最大的互联网数据速度,但 ISP 只允许设置的限制,ISP 是如何做到的?它是如何同时实现上行和下行的?
它是否设置了 1 秒内发送/接收数据的最大限制,并丢弃了其余的数据包。丢弃上行数据包不会有太大问题,但丢弃下行数据包效率很低。
它是否存储数据包,并仅在延迟后发送它们。但这会给 ISP 带来不必要的负载。
还有别的吗?
并且,考虑到 ping 延迟约为 100ms,我们如何利用它来发挥优势。
答案1
答案2
是的,除了缓冲突发流量的小队列外,流量将被丢弃。通常您不会注意到,因为 TCP 等协议或堆栈上层的应用程序会妥善处理此问题,例如通过重新传输数据包和/或降低发送速率。更复杂的 QoS/流量整形方法可以使用更长的队列,但这通常会付出代价:更高的延迟。
当下一个链接速度较慢时(例如从 100 MBit/s 的链接变为 10 MBit/s 的链接,或者存在人为限制),多余的流量将被丢弃。
人为限制可能是由于您超出了每月流量配额而限制您的速度,甚至是服务器端限制。
物理限制是因为链路无法更快地传输数据。一个简单的例子就是以太网。千兆位如今无处不在,但旧的 100 MBit/s 卡根本无法达到这种速度。使用 ADSL 或 Cable 会稍微复杂一些,因为您可能已经订购了低于物理限制的速度(例如在全千兆硬件上运行 100 MBit/s 链路)。最复杂的是无线链路,如 Wi-Fi 或蜂窝网络,条件不断变化。
答案3
维基百科描述 带宽限制 这边走:
这些带宽限制可以实现:
- 在应用软件级别(客户端程序或服务器程序,即 ftp 服务器、web 服务器等),可以运行并配置为限制通过网络发送的数据,甚至限制从网络接收的数据(每秒最多读取一定量的数据);
- 在网络管理层(通常由 ISP 完成)。
第一个(客户端/服务器程序)通常是完全合法的,因为客户端管理器或服务器管理器(由服务器管理员)选择限制或不限制通过网络从远程程序接收数据的速度或发送到目标程序(服务器或客户端)的数据的速度。
相反,第二种行为(ISP)根据美国联邦通信委员会 (FCC) 规定在美国被视为违法行为。
大多数 ISP 会选择第一种方法,即通过提供节流的互联网调制解调器来限制客户端的带宽。这种方法的优点是既合法,又能避免丢包。
第二种方法涉及在 ISP 的服务器/交换场内进行节流,实际上就是引入一个故意节流的中间中继设备。这种方法在某些国家是非法的,而且它还会导致数据包丢失,这可能会影响客户的满意度。