A few doubts w.r.t RTCP packets...

Feb 12, 2005 7 Replies

Hi,



Let me give a brief description of my project before I put forth my doubts. I am developing a project to develop a VoIP quality monitoring software that resides in a dedicated machine and captures the RTCP packets for voice quality measurement. The initial version will not involve in voice recording and other stuffs. Just plain RTCP packet capture and decoding... Ok. Now, to my queries..



Is'nt it mandatory for all VoIP endpoints to send RTCP packets when they are engaged in a call? Looks like SJPhone does not send them. Is this quite natural or is it a limitation in SjPhone. What are the consequences of this.



Next, I tried with Window Messenger. Messenger does send RTCP packets at regular intervals and I am able to recieve them properly. But, I am able to receive the packet only from the machines that are involved in the conversation. How can I get them from a separate machine that is not actively involved in the call? I think RTP/RTCP spec does allow such third party devices/applications to decode rtcp information. How do I enable this??



Any pointers are greatly appreciated.



With Regards, Stephen Regan.


I don't think it is mandatory. I may be wrong.

How so you capture the packets on the same machine and how are you attempting to capture them on a third machine? How is that third machine connected to the network ?

I used ethereal to read the packets in both the case. In the first case, ethereal was running in one of the endpoint machine and in the second case, it was running in a third machine. All the three machines are in the same network and are connected to the same switch.

I am not able to see my reply. Hence reposting it :-(. Plz ignore this if its duplicated.

I used Ethereal to capture the packets. In the first case, Ethereal was running in one of the endpoint machine. In the second case, I tried running ethereal in the machine in which SIP Server was running, as well as a machine that is not involved in the VoIP call, except being in the same network as that of the other machines.

BTW, all machine are in the same network and are connected to the same switch.

The switch probably not passing the packets. All switches don't unless you configure them to specificly do. Low cost small switches cannot be configured to pass the packets. Try it with some old cheap Ethernet HUB. That should work.

Yaser

Yaser,

Do you mean to say all the RTCP packets will be broadcasted to all the machines in the network. Any way, I will check its getting dropped in the switch.

Stephen Regan.

Yaser,

Do you mean to say all the RTCP packets will be broadcasted to all the machines in the network.

Any way, I will check its getting dropped in the switch.

Stephen Regan.

No, In the old days when Ethernet used a coax cable or used hubs, any packet on the LAN was available for any machine to pickup. Hence you could use sniffers to listen to communications between 2 machines using a 3rd one. These days Ethernet switches ensure that packets only travel between 2 ports and do not send a packet on a port unless it need to. So a third machine will not be able to pick up packets not addressed to it. I am talking about all ethernet packets (at the physical layer.

Yaser

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required