Ethereal-dev: Re: [ethereal-dev] RTP/RTCP from NetMeeting

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <gharris@xxxxxxxxxxxx>
Date: Mon, 17 Jul 2000 10:15:04 -0700
On Mon, Jul 17, 2000 at 11:00:30AM -0600, John McDermott wrote:
> 
> I do not have access to NetMeeting here, but one of my clients wanted to
> use Ethereal to dissect RTP/RTCP, but said that Ethereal could not find
> it.  I know the dissectors are there, but I don't know what to do do
> make them active.  Does anyone know?

What do you mean by "active"?  They're "active" by default, in the
sense that they're not plugins that have to be activated by the user.

*However*, there, as far as I know, are no standard port numbers for RTP
or RTCP (meaning "no port numbers have been assigned to them", not
"Ethereal doesn't support the standard port numbers for them"; it's not
as if Ethereal should be doing something different here, there's nothing
it can do); some other protocol, such as RTSP, is used to negotiate the
port numbers to use.  As such, RTP or RTCP won't be dissected unless
Ethereal has been told, or has figured out, that some particular packets
should be dissected as RTP or RTCP.

The RTSP dissector *does* register particular conversations as
conversations that should be dissected with the RTP or RTCP dissector
(see "rtsp_create_conversation()" in "packet-rtsp.c"), so *if*
NetMeeting sets up the session with RTSP *and* the RTSP packets which do
so are in the capture *and* the packets in question are recognized by
the RTSP dissector (see "process_rtsp_request_or_reply()" in the RTSP
dissector), *then* it should dissect the RTP and/or RTCP packets.

Otherwise, you'd have to

	1) change Ethereal to dissect whatever other protocol is used to
	   set up the RTP and RTCP sessions or make it handle whatever
	   RTSP packets are used;

	2) add (e.g., with per-protocol preferences for RTP and RTCP, or
	   with a UI option to mark a particular conversation as being
	   RTP or RTCP, e.g. with a menu item "mark current packet as
	   part of a conversation with a paritcular protocol") a
	   mechanism to the UI to arrange that Ethereal be able to
	   recognize RTP or RTCP packets *without* the help of RTSP.