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 / 问题 / 886699
Accepted
miken32
miken32
Asked: 2017-12-06 09:10:31 +0800 CST2017-12-06 09:10:31 +0800 CST 2017-12-06 09:10:31 +0800 CST

服务器RTP抖动的原因

  • 772

调查一些通话质量问题(通话中的 0.5 – 1 秒死角) 我对同一 PBX 上的两个分机之间的电话通话进行了数据包捕获。由于我是从 PBX 捕获的,我很惊讶地看到 Wireshark 报告了一个巨大的抖动峰值,与通话中的死点同步:

抖动图截图

我的理解是抖动是由数据包丢失和/或传输中的延迟引起的,离开 PBX 的 RTP 流应该是相对原始的。但是这个峰值出现在所有四个 RTP 流中(办公室 1 到 PBX、办公室 2 到 PBX、PBX 到办公室 1、PBX 到办公室 2),所以看起来数据包在离开服务器时已经很糟糕了。

PBX 是 Scientific Linux (RHEL) 6.9 上的 Asterisk 13(在 VMWare ESXi 5.5 客户机上运行,​​带有新更新的工具和 VMXNET3 适配器。)CPU 的使用率稳定在 5-15% 左右,网络流量极小。我在哪里可以解决此问题?此类问题是否有任何常见原因?我假设由于服务器上存在问题,我可以排除外部网络端的问题吗?

virtual-machines
  • 2 2 个回答
  • 1686 Views

2 个回答

  • Voted
  1. Best Answer
    miken32
    2018-12-14T10:46:42+08:002018-12-14T10:46:42+08:00

    终于想通了!TLDR:禁用主机上的电源管理。

    尽管 CPU 使用率很低,但我们仍然认为这与 CPU 负载有关。因此,我们正在尝试降低 CPU 的负载,预计调用中的死点问题会变得更糟。相反,它完全消失了。因此,在多次查看 vCenter 中的 CPU 使用情况统计信息后,我终于查看了该图上的另一条线。

    显示高就绪时间的 CPU 使用率图

    这对很多人来说可能不是新闻,但我发现CPU 就绪时间是 VM 准备好使用 CPU 的时间量,但主机无法分配物理资源。我发现的大多数消息来源都说低于 5% 的任何东西都不是问题,但它确实似乎对我们的语音流产生了影响。我们每分钟都在看到剪裁,而且图表还显示每分钟的准备时间都有一个高峰。

    所以我想知道为什么这会在高 CPU 负载时​​消失,并认为它一定是某种电源管理。当主机看到使用率增加时,它会使 CPU 资源始终可用于 VM。所以我在主机的 BIOS 中禁用了电源管理,等等:

    显示低就绪时间的 CPU 使用率图

    接近图表末尾的就绪时间略有增加,对应于迁移回该主机的其他六台虚拟机。

    呼叫跟踪现在显示的抖动量可以忽略不计,并且切口已从呼叫中消失。进一步的研究表明,对于延迟敏感和 CPU 非密集型工作负载来说,这是一个比较常见的问题。电源管理看到非常低的 CPU 使用率并假设它可以限制处理器,即使它不应该!

    • 2
  2. simonpa71
    2018-09-26T08:51:43+08:002018-09-26T08:51:43+08:00

    我遇到了类似的问题,但更糟糕的是,Wireshark RTP 图表中有许多尖峰、嘶嘶声和断断续续的音频。

    在许多实验过程中,我转储了已增长到 1.5GB的CDR 数据库。我注意到了它的大小,但在解决音频问题之前一直在推迟修剪。B-)

    这显然立即提高了音频质量,包括将 IVR 消息转码为 G729。

    从到 VPS 的SmokePing跟踪中也可以看到延迟。

    • 0

相关问题

  • Xen - 无法创建域,因为“无法连接 vdb”

  • 我可以安全地为我的虚拟机使用什么范围的 MAC 地址?

  • 将 VMDK 转换为 VHD 后启动虚拟机时出现问题

  • 在 VM 中运行 Fedora 目录服务器

  • 如何提高 Hyper-V 性能

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