C# 如何在VOIP网络上捕获H.323语音流量?

C# 如何在VOIP网络上捕获H.323语音流量?,c#,voip,rtp,winpcap,h.323,C#,Voip,Rtp,Winpcap,H.323,我正在尝试使用SharpPCap/PCap.Net捕获VOIP网络上电话对话的WAV数据 我们正在使用H.323建议,据我所知,语音数据位于RTP数据包中。然而,没有办法试探性地确定UDP数据包是否是RTP数据包,因此在捕获数据之前,我们必须做更多的工作 323建议显然在通过RTP发送WAV数据之前,在特定TCP端口上使用大量流量来协商呼叫。然而,我很少有机会确定在那些TCP端口上实际发送什么数据、何时发送、数据包是什么样子、如何处理等等 如果有人知道怎么做,我会非常感激。我的谷歌Fu在这一点上

我正在尝试使用SharpPCap/PCap.Net捕获VOIP网络上电话对话的WAV数据

我们正在使用H.323建议,据我所知,语音数据位于RTP数据包中。然而,没有办法试探性地确定UDP数据包是否是RTP数据包,因此在捕获数据之前,我们必须做更多的工作

323建议显然在通过RTP发送WAV数据之前,在特定TCP端口上使用大量流量来协商呼叫。然而,我很少有机会确定在那些TCP端口上实际发送什么数据、何时发送、数据包是什么样子、如何处理等等

如果有人知道怎么做,我会非常感激。我的谷歌Fu在这一点上似乎让我失望

是你的朋友吗。。。我想它仍然有一个插件,可以让你选择一个VoIP流,然后保存到文件中。有趣的是,如果你使用的是交换网络

是你的朋友吗。。。我想它仍然有一个插件,可以让你选择一个VoIP流,然后保存到文件中。有趣的是,如果你使用的是交换网络


您必须解析来自双方的h.323 OLC消息,然后才能知道要捕获哪些pakets

您必须解析来自双方的h.323 OLC消息,然后才能知道要捕获哪些pakets

对不起。我一定没说清楚。我不想使用Wireshark。我需要实际编写软件来执行保存这些电话对话的WAV文件的任务。我看不出Wireshark在这方面对我有什么帮助。我误解你的建议了吗?wireshark是开源的,所以我相信你可以在那里找到你需要的东西。协议解码也在wireshark中。(你甚至可以自己使用数据包来解码数据包。)大多数VoIP的问题是,它将是交换网络上的UDP。很难从电线上嗅出来。对不起。我一定没说清楚。我不想使用Wireshark。我需要实际编写软件来执行保存这些电话对话的WAV文件的任务。我看不出Wireshark在这方面对我有什么帮助。我误解你的建议了吗?wireshark是开源的,所以我相信你可以在那里找到你需要的东西。协议解码也在wireshark中。(你甚至可以自己使用数据包来解码数据包。)大多数VoIP的问题是,它将是交换网络上的UDP。很难从电线上嗅出来谢谢Boris。我想我的做法是不同的,但我认为我所做的会起作用。现在,我能够通过报头(数据包类型,第2字节)检测RTCP数据包,然后查找SDE。SDE将拥有CNAME,这给了我独一无二的手机。然后,我还可以获得SSRC并开始使用相同的SSRC抓取所有RTP数据包。希望这能让我做我想做的事情并捕获WAV数据。我还没做完呢。我们走着瞧,谢谢你,鲍里斯。我想我的做法是不同的,但我认为我所做的会起作用。现在,我能够通过报头(数据包类型,第2字节)检测RTCP数据包,然后查找SDE。SDE将拥有CNAME,这给了我独一无二的手机。然后,我还可以获得SSRC并开始使用相同的SSRC抓取所有RTP数据包。希望这能让我做我想做的事情并捕获WAV数据。我还没做完呢。我们拭目以待。