在企业网络和供应商环境中,通过 IP 协议传输语音面临着各种挑战。首先,对可用性的要求非常高。作为一种实时服务,用户也会立即发现服务质量方面的问题。丢包、抖动和延迟等网络质量参数会严重影响实时传输协议(RTP)的语音质量。
请注意,在 VoIP 环境中,不同的数据流是有区别的。信令是第一个数据流。信令是用于设置和清除下行数据流及其变化的通信。在当今的 VoIP 网络中,通常使用会话启动协议(SIP)来完成。第二个数据流是语音传输。因此,在发生错误时,必须能够记录这两个数据流并对其进行有效分析。
IOTA简介:IOTA 是一款功能强大的网络捕获和分析解决方案,适用于边缘和核心网络。IOTA 系列包括便携式 EDGE 型号、高速 CORE 型号和 IOTA CM 集中设备管理系统。IOTA 解决方案可为分支机构、中小企业和核心网络(如数据中心)提供快速高效的网络分析和故障排除功能。
开始
下面的示例逐步概述了如何使用IOTA 分析降低的 VoIP 质量。它涉及呼叫设置错误和语音质量错误。
第一步是配置物理接口。为此,我们使用左侧菜单树导航到 “捕获 ”页面,然后导航到 “接口配置 ”部分。如下图所示,接口配置为 SPAN(带外),具有 10/100/1000 Mbit/s 自动协商功能,这意味着两个物理接口都可以接收来自 SPAN 端口或 TAP 的待分析流量。如果要将 IOTA 内联到数据流中,则必须勾选内联模式旁边的复选框并点击保存按钮。
图1 物理接口配置。本例中为 SPAN 模式下的 10/100/1000 Mbit/s 自动协商
准备好物理接口并定位好 IOTA 后,我们连接到相应的电缆,然后在捕获控制页面上单击页面底部的开始捕获按钮启动捕获过程。或者,我们也可以按下 IOTA 设备上的物理 “开始捕捉 ”按钮来启动捕捉过程。这将加快整个过程,未经培训或没有权限的人员也可以进行操作。
图2 使用 “Capture Control(捕捉控制)”子菜单中的 “Start Capture(开始捕捉)”按钮开始录制
故障排除仪表板
要排除网络电话的故障,我们首先要使用网络电话仪表板。
图3 导航至 VoIP 控制面板
会话过滤
在 VoIP 仪表板上,我们可以看到 VoIP 会话的列表。在这里,我们可以看到源 URI 和目标 URI、用户代理和会话持续时间。使用 VoIP 会话表的 “选择 ”列过滤特定会话,如图 4 中的示例,我们过滤了与 “sip:23@192.168.178.1;user=phone ”相关的会话。
对所需 VoIP 会话应用筛选器后,我们会在右侧边缘看到 VoIP 流程图,通过该图可以大致了解 VoIP 会话中涉及的端点。此外,还可将过滤器设置为上部区域的 VoIP 通话 ID。因此,仪表板下部区域的所有面板都会过滤为该呼叫。
图4 VoIP 仪表板,SIP 会话从号码 *29 转到号码
RTP分析
再往下看,您可以看到与传输语音的实时传输协议相关的丢包和抖动等质量参数。高抖动会导致机器人声音,而丢包会导致对话无声。图 5 显示了网络电话会话中的高丢包率和高抖动率。我们还可以看到由此产生的抖动和丢包的方向。在示例中,这是由于所使用的软电话的 WiFi 连接不佳造成的。
图5 VoIP 仪表板中的 RTP 抖动和数据包丢失
该仪表板还可以查看所谓的平均意见分(MOS),即用户的主观通话质量(取决于通信方向)。图 6 举例说明了这一点。不过,这也取决于所使用的编解码器。常用的 G.711 编解码器的最大 MOS 约为 4.4。
图6 VoIP 面板中的计算 MOS 图
如图 7 所示,根据对 VoIP 呼叫 ID 的过滤,还可显示相应语音数据流(RTP 流)的信息。除了客户端和服务器 IP 和端口外,我们还可以看到呼叫持续时间。此外,还可以下载包含 RTP 流的 PCAPNG 文件。例如,我们可以在 Wireshark 中使用支持的编解码器监听语音数据,并听到语音传输中的任何错误。如果用户报告在通话过程中出现噪音,则可以快速、轻松地检查网络中的潜在错误。
图7 VoIP 面板中的 RTP 流列表
信令分析
除了语音质量差的评估外,信令中也可能存在错误,如呼叫设置或拆分。要对单个呼叫进行评估,我们需要在 VoIP 会话中选择所需的呼叫,如上所述。然后,我们可以在 SIP 响应类型部分看到对 SIP 请求的响应。如果有许多信息带有 4xx(客户端错误)、5xx(服务器端错误)或 6xx(全局错误),则应对这些信息进行更仔细的分析。
图8 SIP 响应类型图与各响应类型的编号
不过,建议特别注意 4xx,因为如果 SIP 使用了身份验证,注册和邀请的 407 和 401 消息是完全正常的。要查看确切的应答和通话过程中的时间,我们可以在 VoIP 面板中查看 SIP 流详情评估。在右侧窗格中,SIP 流程图显示了呼叫流程。在这种情况下,我们可以看到使用了身份验证,但收到的回复是 407,在这种情况下,4xx 回复是正常的,而不是错误。
图9 带有详细呼叫信令流程的 SIP 流程详情
如果在建立呼叫时出现性能问题,建议从上述 VoIP 会话表中下载 VoIP 呼叫的 PCAPNG。这样,对 SIP 请求的响应延迟过大就可能是性能问题的原因。
IOTA的优势
VoIP 故障排除过程往往像大海捞针。IOTA 通过易于使用的过滤选项(如选择单个呼叫),简化了对根本原因的搜索。
可以根据 SIP 流程图检测信令错误,并下载为 PCAPNG 进行更深入的分析,例如查看单个报头。
RTP 抖动和损耗图形可以很好地概括语音质量。在 RTP 流中,IOTA 还提供下载带有 RTP 数据的 PCAPNG 的选项,以便在 Wireshark 的 RTP 播放器中收听语音数据。