普通互联网用户消耗多少个并发 TCP 连接?

普通互联网用户消耗多少个并发 TCP 连接?

我打算为一个通常有 10 到 20 位客人使用笔记本电脑/智能手机/平板电脑连接互联网的地方购买一个路由器。

我选择的路由器有一个更便宜的版本可处理 10,000 个并发会话,同时更贵的的限制为30,000。

我真的无法解释这在实践中意味着什么。

这应该是一道简单的数学题:所需容量=用户数量X每个用户的连接数

一个“普通”用户大约消耗多少个并发连接?
我说的普通用户是指:浏览网络、观看 YouTube、阅读电子邮件等的用户。我接受一个大概的数字。

答案1

我曾经为多个卫星办公室提供过同样的互联网连接。我发现互联网上并没有这方面的信息。
因此,我做了大量测量,建立了一个基本的经验法则,以确定典型用户实际需要多少个连接。

首先,单一的“典型用户”是不存在的。每个人的使用情况差别很大,主要取决于他们的上网习惯。

典型的 Windows 计算机配有相当普通的标准软件(一些 Google 应用、一些 Adob​​e 产品、Microsoft Office),仅用于基本更新检查、遥测和数据同步等操作时,始终会有 10-15 个连接。启动/登录后,由于所有后台应用都会进行启动检查,连接数可能会短暂达到 50-100 个。

Web 浏览器通常会为每个选项卡/窗口保持 3-5 个连接打开(即使它不是活动选项卡/窗口)。如果选项卡运行在线应用程序(Microsoft Office Web 应用程序、Google Docs、SharePoint 等),则此连接数很容易增加到 15-20。
此外,在加载/重新加载/刷新任何页面时,浏览器可能会短暂地额外使用 10-50 个连接来获取网页的各个部分。如果用户不使用广告拦截插件,尤其是广告较多的页面可能会真正推高此连接数。请注意,即使用户将此选项卡设为非活动或最小化,网页中的许多广告横幅也会加载一些代码以每隔 X 秒自动刷新一次。

显然,用户在一天中通常连续打开的浏览器标签数以及这些页面的刷新密集程度会产生很大的影响。

综合起来,我们得出以下结论:
轻度用户:平均 30-50 个连接 -> 峰值可达 120-250 个
重度用户:平均 60-100 个连接 -> 峰值可达 250-500 个
好消息是峰值就是峰值。并不是每个人都会同时拥有峰值。

考虑到我们需要在给定路由器上为 N 个用户提供服务,我们计算出所需的最小容量如下:
60*N(基于重度用户的低端)+ 500*N/5(假设 5 个用户中 1 个在任何给定时间达到重度用户峰值负载)
或简化为:160*N
如果您觉得 160 不够大(或太多),您可以根据需要向上或向下调整 160。
因此,对于您来说,10,000 个连接路由器应该绰绰有余。

需要提及的两个主要警告:

  1. 许多 SOHO 路由器都具有状态包检测 (SPI) 功能。经验告诉我,关闭此功能后,它们的工作效果会好得多。尽管它们将该功能作为“优化”来更好地处理高负载,但许多此类路由器没有足够的 RAM 和/或 CPU 容量来正确执行该功能。结果,路由器实际上会变慢或变得不稳定。如果您的路由器出现故障,请记住这一点。
  2. 如果您的任何用户定期使用 BitTorrent,请为该用户分配至少 500 个连接。如果用户在 BitTorrent 客户端中对 BitTorrent 设置进行创造性设置,那么如果他一个人就消耗了 2000 多个连接,请不要感到惊讶。
    在这方面,BitTorrent 可能真的很讨厌。运行 1 或 2 个种子通常不是什么大问题,但是当有人同时播种 20-30 个种子时,事情很快就会变糟。

相关内容