AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 678336
Accepted
Mark Henderson
Mark Henderson
Asked: 2015-03-26 18:57:56 +0800 CST2015-03-26 18:57:56 +0800 CST 2015-03-26 18:57:56 +0800 CST

20Mbps WAN 通过 IPSec 隧道限制为 10Mbps

  • 772

我们最近将一个远程站点从 10/10Mbps 光纤升级为 20/20Mbps 光纤链路(光纤到地下室,然后是 VDSL 从地下室到办公室,大约 30 米)。此站点和中央站点之间存在常规的大型(多 gig)文件副本,因此理论上将链接增加到 20/20 应该可以将传输时间大致减半。

对于复制文件的传输(例如,robocopy用于在任一方向复制文件,或 Veeam Backup and Recovery 的复制),它们的上限为 10Mbps。

升级前:

在此处输入图像描述

升级后(robocopy):

在此处输入图像描述

几乎相同(忽略传输时间长度的差异)。

传输是通过 Cisco ASA5520 和Mikrotik RB2011UiAS-RM之间的 IPSec 隧道完成的。

第一个想法:

  • 服务质量 - 不。有 QoS 规则,但没有应该影响此流的规则。无论如何,我禁用了所有规则几分钟来检查,没有任何变化
  • 软件定义的限制。大部分流量是 Veeam Backup and Recovery 异地运输,但其中没有定义限制。此外,我只是做了一个直线robocopy,看到了完全相同的统计数据。
  • 硬件能力不行。嗯,5520 公布的性能数据是 225Mbps 的 3DES 数据,而 Mikrotik 没有公布数据,但它会超过 10Mbps。在进行这些传输测试时,Mikrotik 的 CPU 使用率约为 25%-33%。(此外,通过 IPSec 隧道进行 HTTP 传输的速度确实接近 20Mbps)
  • 延迟与 TCP 窗口大小相结合?好吧,站点之间的延迟为 15 毫秒,因此即使在最坏的情况下 32KB 窗口大小32*0.015也是最大 2.1MB/秒。此外,多个并发传输仍然只是加起来 10Mbps,这不支持这个理论
  • 也许来源和目的地都是狗屎?好吧,源可以推动 1.6GB/秒的持续顺序读取,所以不是这样。目标可以执行 200MB/秒的持续顺序写入,所以也不是这样。

这是一个非常奇怪的情况。我以前从未见过任何东西以这种方式表现出来。

我还能在哪里看?


在进一步调查中,我有信心指出 IPSec 隧道是问题所在。我做了一个人为的例子,直接在站点上的两个公共 IP 地址之间进行了一些测试,然后使用内部 IP 地址进行了完全相同的测试,我能够在未加密的互联网上复制 20Mbps,而在 IPSec 上只有 10Mbps边。


以前的版本有关于 HTTP 的红鲱鱼。忘记这一点,这是一个错误的测试机制。

根据 Xeon 的建议和我的 ISP 在我向他们寻求支持时的回应,我设置了一个 mangle 规则,将 IPSec 数据的 MSS 降至 1422 -基于此计算:

 1422   +  20 + 4 +  4 +   16  +   0     +      1    +     1     +   12
PAYLOAD  IPSEC SPI ESP  ESP-AES ESP (Pad)  Pad Length Next Header ESP-SHA

适合 ISP 的 1480 MTU。但这并没有产生任何有效的影响。


在比较了wireshark捕获之后,TCP会话现在在两端协商了一个1380的MSS(在调整了一些东西并添加了一个缓冲区以防我的数学很糟糕。提示:它可能会这样做)。无论如何,1380 也是 ASA 的默认 MSS,因此它可能一直在协商这个问题。


我在 Mikrotik 内的工具中看到一些奇怪的数据,我一直在使用这些数据来测量流量。可能什么都不是。我之前没有注意到这一点,因为我使用的是过滤查询,我只在删除过滤器时才看到这一点。

windows
  • 2 2 个回答
  • 2198 Views

2 个回答

  • Voted
  1. Best Answer
    Mark Henderson
    2015-03-30T18:40:23+08:002015-03-30T18:40:23+08:00

    即使 CPU 是我检查的第三件事,我还是写了这个:

    在进行这些传输测试时,Mikrotik 的 CPU 使用率约为 25%-33%

    CPU图证实了这一点

    在此处输入图像描述

    我已经通过外部资源(即一堆其他支持论坛和博客)确认大多数 Mikrotik 路由器不能通过 3DES 或 AES 加密推送超过 11Mbps 的 IPSec 流量,除非你得到一个具有硬件加密卸载的模型.

    所以看起来这只是一个硬件限制。我应该早点发现它,但由于某种原因,Mikrotik 没有向我表明它受 CPU 限制。

    我去购物。

    • 3
  2. shodanshok
    2015-03-31T14:46:34+08:002015-03-31T14:46:34+08:00

    我可以确认罪魁祸首是CPU。 在这里,我对 Mikrotik RB750GL 进行了基准测试,并在 AES-128 流量下测量了 12 Mb/s(在 3DES 下仅为 6.0 Mb/s)。

    您的结果似乎与我记录的完全一致。

    • 2

相关问题

  • 知道任何适用于 Windows 的快速可编写脚本的 ftp 客户端吗?[关闭]

  • 如果 Windows 服务崩溃,如何自动重新启动它?

  • 无法安排任务(访问被拒绝)

  • 物理机重启时自动重启虚拟机(VMWare)

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve